2023年政策修订增补工作正在进行中,欢迎参与!
Module:权限申请按钮
跳转到导航
跳转到搜索
local module = {}
local getArgs = require('Module:Arguments').getArgs
local applicableUserGroups = {'维护姬', '管理员', '用户查核员', '监督员', '界面管理员', '机器人', '机器用户', '文件维护员', '普通'}
local nomobileUserGroups = {'管理员', '用户查核员', '监督员', '界面管理员'}
local suffixText = {
['普通'] = '(用于申请优质编辑者、技术编辑员等)'
}
local function has_value(tab, val)
for _, value in ipairs(tab) do
if value == val then
return true
end
end
return false
end
function module.main(frame)
local args = getArgs(frame)
local htmlTable = {}
local isFirstElement = true
local userGroups = args.userGroups or table.concat(applicableUserGroups, ',')
for _, userGroup in ipairs(mw.text.split(userGroups, ',', true)) do
if has_value(applicableUserGroups, userGroup) then
local element = mw.html.create('span')
if (has_value(nomobileUserGroups, userGroup)) then
element:addClass('nomobile')
end
if isFirstElement then
isFirstElement = false
else
element:wikitext('、')
end
element:wikitext(
'[{{fullurl:萌娘百科_talk:讨论版/权限变更|action=edit§ion=new&nosummary=1&preload=Template%3A权限申请%2F' ..
userGroup ..
'申请预载}} <span class="mw-ui-button mw-ui-progressive" role="button">' ..
userGroup .. '申请</span>]'
)
element:wikitext(suffixText[userGroup] or '')
table.insert(htmlTable, tostring(element))
end
end
return frame:preprocess(table.concat(htmlTable, ''))
end
return module