require('মডিউল:No globals')
local yesno = require('মডিউল:Yesno')
local makeMessageBox = require('মডিউল:Message box').main
local getArgs
local activeBox -- lazily initialized if we get an active request
----------------------------------------------------------------------
-- বক্স শ্রেণীর সংজ্ঞা
----------------------------------------------------------------------
local box = {}
box.__index = box
function box.new(protectionType, args)
local obj = {}
setmetatable(obj, box)
obj.tmboxArgs = {} -- Used to store arguments to be passed to tmbox by the box:export method.
-- তারিখ সেট করুন।
obj.tmboxArgs.attrs = { ['data-origlevel'] = protectionType }
return obj
end
function box:setArg(key, value)
-- এটি tmbox-এ যাওয়ার জন্য একটি মান সেট করেন।
if key then
self.tmboxArgs[key] = value
end
end
function box:export()
if not mw.title.getCurrentTitle().isTalkPage and not self.demo then
return '<span class="error">ত্রুটি: সুরক্ষিত পাতার সম্পাদনার অনুরোধগুলি কেবল আলাপ পাতায় করা যেতে পারে।</span>[[বিষয়শ্রেণী:সম্পাদনা অনুরোধ টেমপ্লেট ব্যবহার করা হয়েছে যা আলাপ পাতা নয়]]'
end
self:setArg('smalltext', "এই [[উইকিপিডিয়া:সম্পাদনার অনুরোধ|সম্পাদনার অনুরোধের]] উত্তর দেয়া হয়েছে। Set the <code style=\"white-space: nowrap;\">|answered=</code> or <code style=\"white-space: nowrap;\">|ans=</code> parameter to '''no''' to reactivate your request.")
self:setArg('small', true)
self:setArg('class', 'editrequest')
return makeMessageBox('tmbox', self.tmboxArgs)
end
----------------------------------------------------------------------
-- প্রক্রিয়া যুক্তি এবং প্রাথমিক বস্তু
----------------------------------------------------------------------
local p = {}
function p._main(protectionType, args)
local boxType = box
if not yesno(args.answered or args.ans, true) then
if not activeBox then
activeBox = require('মডিউল:সুরক্ষিত পাতা সম্পাদনার অনুরোধ/সক্রিয়')(box, yesno, makeMessageBox)
end
boxType = activeBox
end
local requestBox = boxType.new(protectionType, args)
return requestBox:export()
end
local mt = {}
function mt.__index(t, k)
if not getArgs then
getArgs = require('মডিউল:Arguments').getArgs
end
return function (frame)
return t._main(k, getArgs(frame, {wrappers = {'টেমপ্লেট:সম্পাদনার অনুরোধ', 'টেমপ্লেট:সম্পাদনা অর্ধ-সুরক্ষিত', 'টেমপ্লেট:সম্পাদনা ইন্টারফেস-সুরক্ষা'}}))
end
end
return setmetatable(p, mt)