Module:Protection banner: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
(logic fix) |
(see if this is possible with just two options) |
||
Line 139: | Line 139: | ||
-- rule for every idiosyncracy that was in the old template system. |
-- rule for every idiosyncracy that was in the old template system. |
||
local keyTable = {protType, protLevel, namespace, reason, expiry} |
local keyTable = {protType, protLevel, namespace, reason, expiry} |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
} |
|||
local reasonBehaviors = { |
local reasonBehaviors = { |
||
Line 164: | Line 145: | ||
blp = 'reasonFirst', |
blp = 'reasonFirst', |
||
sock = 'reasonFirst', |
sock = 'reasonFirst', |
||
office = ' |
office = 'reasonFirst', |
||
} |
} |
||
local reasonBehavior = reasonBehaviors[reason] |
local reasonBehavior = reasonBehaviors[reason] |
||
⚫ | |||
if reasonBehavior == ' |
if reasonBehavior == 'reasonFirst' then |
||
local attempt = cats[reason] |
|||
attemptOrder = { |
|||
if attempt then |
|||
⚫ | |||
return attempt |
|||
⚫ | |||
else |
|||
⚫ | |||
error('the category for key "' .. reason .. '" is undefined') |
|||
⚫ | |||
end |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
{false, false, false, true, false}, -- 9 |
|||
{true, true, true, false, true}, -- 10 |
|||
{true, true, true, false, false}, -- 11 |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
} |
|||
elseif reasonBehavior == 'namespaceFirst' then |
elseif reasonBehavior == 'namespaceFirst' then |
||
attemptOrder = { |
|||
-- Sort the order so that namespace keys are checked before reason matches. |
|||
-- type, level, ns, reason, expiry |
|||
attemptOrder[3], attemptOrder[4] = attemptOrder[4], attemptOrder[3] |
|||
{true, true, true, true, true}, -- 1 |
|||
attemptOrder[5], attemptOrder[6] = attemptOrder[6], attemptOrder[5] |
|||
{true, true, true, true, false}, -- 2 |
|||
⚫ | |||
⚫ | |||
⚫ | |||
{true, false, true, true, true}, -- 5 |
|||
{true, false, true, true, false}, -- 6 |
|||
{true, false, true, false, true}, -- 7 |
|||
{true, false, true, false, false}, -- 8 |
|||
{false, false, true, false, false}, -- 9 |
|||
{true, true, false, true, true}, -- 10 |
|||
{true, true, false, true, false}, -- 11 |
|||
{true, true, false, false, true}, -- 12 |
|||
{true, false, false, true, true}, -- 13 |
|||
{true, false, false, true, false}, -- 14 |
|||
{true, false, false, false, true}, -- 15 |
|||
{true, false, false, false, false}, -- 16 |
|||
{false, false, false, false, false} -- 17 |
|||
} |
|||
⚫ | |||
error(reason .. ' is not a valid reason') |
error(reason .. ' is not a valid reason') |
||
end |
end |