Module:Effective protection level: Difference between revisions

Use new protection retrieval, and prepare for when titleblacklist works here
(Sync from sandbox)
(Use new protection retrieval, and prepare for when titleblacklist works here)
Line 20:
return 'sysop'
else
local level = frame:callParserFunction('PROTECTIONLEVEL', title.protectionLevels[action,] pagename)and title.protectionLevels[action][1]
if level == 'sysop' then
return 'sysop'
elseif frame:callParserFunction('CASCADINGSOURCES', pagename) ~= '' then -- used by a cascading-protected page
return 'sysop'
elseif level == 'templateeditor' then
elseif title.namespace == 6 and action == 'move' then -- Special permission is required to move files. Note this breaks the hierarchy, because both templateeditor and filemover are required to move template-protected files. This isn't a real concern currently, since template protection shouldn't be applied to files.
return 'filemovertemplateeditor'
elseif levelaction ~== 'move' then
--[[local blacklistentry = mw.ext.TitleBlacklist.test('edit', pagename) -- Testing action edit is correct, since this is for the source page. The target page name gets tested with action move.
return level
if blacklistentry and not blacklistentry.params.autoconfirmed then
-- If we get this far, the page is unprotected. Figure out what group is needed to perform the action they're trying to do normally, and return that.
return 'autoconfirmedaccountcreator'
elseif action == 'upload' or action == 'move' then
else]]if title.namespace == 6 then
return 'autoconfirmed'
return 'userfilemover'
elseif action == 'create' and title.namespace % 2 == 0 and title.namespace ~= 118 then -- You need to be registered, but not autoconfirmed, to create non-talk pages other than drafts
else
return 'user'
return '*autoconfirmed'
end
else
--[[local blacklistentry = mw.ext.TitleBlacklist.test(action, pagename)
return '*'
if blacklistentry then
return blacklistentry.params.autoconfirmed and 'autoconfirmed' or 'accountcreator'
else]]if level then
return level
elseif action == 'upload' or action == 'move' then
return 'autoconfirmed'
elseif action == 'create' and title.namespace % 2 == 0 and title.namespace ~= 118 then -- You need to be registered, but not autoconfirmed, to create non-talk pages other than drafts
return 'user'
else
return '*'
end
end
end
Anonymous user