Module:Lua banner: Difference between revisions

use 0 for protection level of current page if it does not exist yet (for preview while creating a template), per Template talk:Lua#Lua error when a template page does not exist yet
m (1 revision)
en>Johnuniq
(use 0 for protection level of current page if it does not exist yet (for preview while creating a template), per Template talk:Lua#Lua error when a template page does not exist yet)
Line 1:
-- This module implements the {{lua}} template.
 
local yesno = require('Module:Yesno')
local mList = require('Module:List')
Line 37 ⟶ 36:
end
local moduleList = mList.makeList('bulleted', moduleLinks)
boxArgs.text = 'UsesThis [[Wikipedia:Lua|Lua]]:\n' .. moduleList
(mw.title.getCurrentTitle():inNamespaces(828,829) and 'module' or 'template') ..
' uses [[Wikipedia:Lua|Lua]]:\n' .. moduleList
end
boxArgs.type = 'notice'
boxArgs.small = true
boxArgs.image = '[[File:Lua-logo-nolabel.svg|30px|alt=Lua logo|link=Wikipedia:Lua]]'
return mMessageBox.main('mbox', boxArgs)
end
Line 49 ⟶ 50:
return ''
end
 
local cats = {}
 
-- Error category
if #modules < 1 then
cats[#cats + 1] = 'Lua templates with errors'
end
 
-- Lua templates category
titleObj = titleObj or mw.title.getCurrentTitle()
Line 65 ⟶ 66:
testcases = true
}
if titleObj.namespace == 10
and not subpageBlacklist[titleObj.subpageText]
then
Line 81 ⟶ 82:
end
cats[#cats + 1] = category
local protLevels = {
autoconfirmed = 1,
extendedconfirmed = 2,
templateeditor = 3,
sysop = 4
}
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
for i, module in ipairs(modules) do
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] = "Templates using under-protected Lua modules"
break
end
end
end
 
for i, cat in ipairs(cats) do
cats[i] = string.format('[[Category:%s]]', cat)
Anonymous user