Module:Protection banner: Difference between revisions

fix logic for reasonBehavior == 'all' and fix the office protection category key
Enwikipedia>Mr. Stradivarius
(see if this is possible with just two options)
Enwikipedia>Mr. Stradivarius
(fix logic for reasonBehavior == 'all' and fix the office protection category key)
Line 42:
['pc-autoconfirmed-all-all-all'] = 'Wikipedia pending changes protected pages (level 1)',
['pc-reviewer-all-all-all'] = 'Wikipedia pending changes protected pages (level 2)',
['all-all-all-office-all'] = 'Wikipedia Office-protected pages',
['all-all-all-all-all'] = 'Wikipedia protected pages',
['office'] = 'Wikipedia Office-protected pages',
}
 
Line 150:
local reasonBehavior = reasonBehaviors[reason]
local attemptOrder
if reasonBehavior == 'reasonFirstnamespaceFirst' then
attemptOrder = {
-- type, level, ns, reason, expiry
{true, true, true, true, true}, -- 1
{true, true, true, true, false}, -- 2
{true, true, falsetrue, truefalse, true}, -- 3
{true, true, falsetrue, truefalse, false}, -- 4
{true, false, true, true, true}, -- 5
{true, false, true, true, false}, -- 6
{true, false, falsetrue, truefalse, true}, -- 7
{true, false, falsetrue, truefalse, false}, -- 8
{false, false, falsetrue, truefalse, false}, -- 9
{true, true, truefalse, falsetrue, true}, -- 10
{true, true, truefalse, falsetrue, false}, -- 11
{true, true, false, false, true}, -- 12
{true, false, truefalse, falsetrue, true}, -- 13
{true, false, truefalse, falsetrue, false}, -- 14
{true, false, false, false, true}, -- 15
{true, false, false, false, false}, -- 16
{false, false, false, false, false} -- 17
}
elseif reasonBehavior == 'namespaceFirstreasonFirst' or reason == 'all' then
attemptOrder = {
-- type, level, ns, reason, expiry
{true, true, true, true, true}, -- 1
{true, true, true, true, false}, -- 2
{true, true, truefalse, falsetrue, true}, -- 3
{true, true, truefalse, falsetrue, false}, -- 4
{true, false, true, true, true}, -- 5
{true, false, true, true, false}, -- 6
{true, false, truefalse, falsetrue, true}, -- 7
{true, false, truefalse, falsetrue, false}, -- 8
{false, false, truefalse, falsetrue, false}, -- 9
{true, true, falsetrue, truefalse, true}, -- 10
{true, true, falsetrue, truefalse, false}, -- 11
{true, true, false, false, true}, -- 12
{true, false, falsetrue, truefalse, true}, -- 13
{true, false, falsetrue, truefalse, false}, -- 14
{true, false, false, false, true}, -- 15
{true, false, false, false, false}, -- 16
{false, false, false, false, false} -- 17
}
else
elseif reason ~= 'all' then
error(reason .. ' is not a valid reason')
end