16,039
回編集
細 (1版) |
細 (1版 をインポートしました) |
||
(4人の利用者による、間の5版が非表示) | |||
23行目: | 23行目: | ||
return nil -- not '*'. a page not being PC-protected is distinct from it being PC-protected with anyone able to review. also not '', as that would mean PC-protected but nobody can review | return nil -- not '*'. a page not being PC-protected is distinct from it being PC-protected with anyone able to review. also not '', as that would mean PC-protected but nobody can review | ||
end | end | ||
elseif action ~= 'edit' and action ~= 'move' and action ~= 'create' and action ~= 'upload' then | elseif action ~= 'edit' and action ~= 'move' and action ~= 'create' and action ~= 'upload' and action ~= 'undelete' then | ||
error( ' | error( '第1引数にはedit、move、create、upload、undelete、autoreviewのどれかを指定してください', 2 ) | ||
end | end | ||
if title.namespace == 8 then -- MediaWiki namespace | if title.namespace == 8 then -- MediaWiki namespace | ||
return 'sysop' | if title.text:sub(-3) == '.js' or title.text:sub(-4) == '.css' or title.contentModel == 'javascript' or title.contentModel == 'css' then -- site JS or CSS page | ||
elseif title.namespace == 2 and title.isSubpage | return 'interfaceadmin' | ||
return 'sysop' | else -- any non-JS/CSS MediaWiki page | ||
return 'sysop' | |||
end | |||
elseif title.namespace == 2 and title.isSubpage then | |||
if title.contentModel == 'javascript' or title.contentModel == 'css' then -- user JS or CSS page | |||
return 'interfaceadmin' | |||
elseif title.contentModel == 'json' then -- user JSON page | |||
return 'sysop' | |||
end | |||
end | |||
if action == 'undelete' then | |||
return 'eliminator' -- 英語版では'sysop' | |||
end | end | ||
local level = title.protectionLevels[action] and title.protectionLevels[action][1] | local level = title.protectionLevels[action] and title.protectionLevels[action][1] | ||
43行目: | 54行目: | ||
return 'templateeditor' | return 'templateeditor' | ||
elseif title.namespace == 6 then | elseif title.namespace == 6 then | ||
return 'filemover' | return 'eliminator' -- 英語版では'filemover' | ||
elseif level == 'extendedconfirmed' then | elseif level == 'extendedconfirmed' then | ||
return 'extendedconfirmed' | return 'extendedconfirmed' | ||
53行目: | 64行目: | ||
if blacklistentry then | if blacklistentry then | ||
if not blacklistentry.params.autoconfirmed then | if not blacklistentry.params.autoconfirmed then | ||
return 'templateeditor' | return 'sysop' -- 英語版では'templateeditor' | ||
elseif level == 'extendedconfirmed' then | elseif level == 'extendedconfirmed' then | ||
return 'extendedconfirmed' | return 'extendedconfirmed' | ||
65行目: | 76行目: | ||
elseif action == 'upload' then | elseif action == 'upload' then | ||
return 'autoconfirmed' | 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 | -- 英語版とは異なり、日本語版では現在のところIPユーザーでも記事等を作成可能なので、以下はコメントアウト | ||
-- 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 | else | ||
return '*' | return '*' |