Module:Lua banner: Difference between revisions
Add parameter to disable protection level tracking, useful when a template only includes part of a module
m (9 revisions imported from templatewiki:Module:Lua_banner) |
(Add parameter to disable protection level tracking, useful when a template only includes part of a module) |
||
Line 36: | Line 36: | ||
end | end | ||
local moduleList = mList.makeList('bulleted', moduleLinks) | local moduleList = mList.makeList('bulleted', moduleLinks) | ||
boxArgs.text = 'This template uses [[Wikipedia:Lua|Lua]]:\n' .. moduleList | local title = mw.title.getCurrentTitle() | ||
if title.subpageText == "doc" then | |||
title = title.basePageTitle | |||
end | |||
if title.contentModel == "Scribunto" then | |||
boxArgs.text = 'This module depends on the following other modules:' .. moduleList | |||
else | |||
boxArgs.text = 'This template uses [[Wikipedia:Lua|Lua]]:\n' .. moduleList | |||
end | |||
end | end | ||
boxArgs.type = 'notice' | boxArgs.type = 'notice' | ||
Line 48: | Line 56: | ||
return '' | return '' | ||
end | end | ||
local cats = {} | local cats = {} | ||
-- Error category | -- Error category | ||
if #modules < 1 then | if #modules < 1 then | ||
cats[#cats + 1] = 'Lua templates with errors' | cats[#cats + 1] = 'Lua templates with errors' | ||
end | end | ||
-- Lua templates category | -- Lua templates category | ||
titleObj = titleObj or mw.title.getCurrentTitle() | titleObj = titleObj or mw.title.getCurrentTitle() | ||
Line 64: | Line 72: | ||
testcases = true | testcases = true | ||
} | } | ||
if titleObj.namespace == 10 | if titleObj.namespace == 10 | ||
and not subpageBlacklist[titleObj.subpageText] | and not subpageBlacklist[titleObj.subpageText] | ||
and not args.noprotcat | |||
then | then | ||
local category = args.category | local category = args.category | ||
Line 86: | Line 95: | ||
sysop = 4 | sysop = 4 | ||
} | } | ||
local currentProt = titleObj.protectionLevels["edit"][1] | local currentProt | ||
if titleObj.id ~= 0 then | |||
-- id is 0 (page does not exist) if am previewing before creating a template. | |||
currentProt = titleObj.protectionLevels["edit"][1] | |||
end | |||
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 | ||
Line 97: | Line 110: | ||
end | end | ||
end | end | ||
for i, cat in ipairs(cats) do | for i, cat in ipairs(cats) do | ||
cats[i] = string.format('[[Category:%s]]', cat) | cats[i] = string.format('[[Category:%s]]', cat) |