วิกิพีเดีย
มอดูล:Protected edit request
คู่มือการใช้งานมอดูล[สร้าง]
คุณอาจจะต้องการสร้างคู่มือการใช้งานของมอดูลนี้ ผู้เขียนสามารถทำการทดลองได้ที่กระบะทราย (สร้าง | คัดลอก) และชุดทดสอบ (สร้าง) ของมอดูลนี้ โปรดเพิ่มหมวดหมู่ไปที่หน้าย่อย /doc หน้าย่อยของมอดูลนี้ |
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 ---------------------------------------------------------------------- -- Box class definition ---------------------------------------------------------------------- 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. -- Set data fields. obj.tmboxArgs.attrs = { ['data-origlevel'] = protectionType } return obj end function box:setArg(key, value) -- This sets a value to be passed to tmbox. if key then self.tmboxArgs[key] = value end end function box:export() self:setArg('smalltext', "มีการตอบคำขอแก้ไขนี้แล้ว ตั้งตัวแปรเสริม <code style=\"white-space: nowrap;\">|answered=</code> หรือ <code style=\"white-space: nowrap;\">|ans=</code> เป็น '''no''' เพื่อเริ่มคำขออีกรอบ") self:setArg('small', true) self:setArg('class', 'editrequest') return makeMessageBox('tmbox', self.tmboxArgs) end ---------------------------------------------------------------------- -- Process arguments and initialise objects ---------------------------------------------------------------------- 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('มอดูล:Protected edit request/active')(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 = {'แม่แบบ:Edit fully-protected', 'แม่แบบ:Edit semi-protected', 'แม่แบบ:Edit template-protected', 'แม่แบบ:Edit extended-protected'}})) end end return setmetatable(p, mt)