Module:Lua banner: Difference between revisions
Applying protection level tracking logic to modules too
(Putting that logic in the correct place) |
(Applying protection level tracking logic to modules too) |
||
Line 72: | Line 72: | ||
testcases = true | testcases = true | ||
} | } | ||
if | if not subpageBlacklist[titleObj.subpageText] then | ||
local protCatName | |||
if titleObj.namespace == 10 then | |||
local category = args.category | |||
if not category then | |||
local categories = { | |||
['Module:String'] = 'Lua String-based templates', | |||
['Module:Math'] = 'Templates based on the Math Lua module', | |||
['Module:BaseConvert'] = 'Templates based on the BaseConvert Lua module', | |||
['Module:Citation'] = 'Lua-based citation templates' | |||
} | |||
categories['Module:Citation/CS1'] = categories['Module:Citation'] | |||
category = modules[1] and categories[modules[1]] | |||
category = category or 'Lua-based templates' | |||
end | |||
cats[#cats + 1] = category | |||
protCatName = "Templates using under-protected Lua modules" | |||
elseif titleObj.namespace == 828 then | |||
protCatName = "Modules depending on under-protected modules" | |||
end | end | ||
if not args.noprotcat and protCatName then | |||
if not args.noprotcat then | |||
local protLevels = { | local protLevels = { | ||
autoconfirmed = 1, | autoconfirmed = 1, | ||
Line 102: | Line 106: | ||
if currentProt == nil then currentProt = 0 else currentProt = protLevels[currentProt] end | if currentProt == nil then currentProt = 0 else currentProt = protLevels[currentProt] end | ||
for i, module in ipairs(modules) do | for i, module in ipairs(modules) do | ||
local moduleProt = mw.title.new(module).protectionLevels["edit"][1] | if module ~= "WP:libraryUtil" then | ||
local moduleProt = mw.title.new(module).protectionLevels["edit"][1] | |||
if moduleProt == nil then moduleProt = 0 else moduleProt = protLevels[moduleProt] end | |||
if moduleProt < currentProt then | |||
cats[#cats + 1] = protCatName | |||
break | |||
end | |||
end | end | ||
end | end |