| Line 35: |
Line 35: |
| | moduleLinks[i] = string.format('[[:%s]]', module) | | moduleLinks[i] = string.format('[[:%s]]', module) |
| | local maybeSandbox = mw.title.new(module .. '/sandbox') | | local maybeSandbox = mw.title.new(module .. '/sandbox') |
| − | if maybeSandbox.exists then | + | if maybeSandbox and maybeSandbox.exists then |
| | moduleLinks[i] = moduleLinks[i] .. string.format(' ([[:%s|sandbox]])', maybeSandbox.fullText) | | moduleLinks[i] = moduleLinks[i] .. string.format(' ([[:%s|sandbox]])', maybeSandbox.fullText) |
| | end | | end |
| Line 52: |
Line 52: |
| | boxArgs.type = 'notice' | | boxArgs.type = 'notice' |
| | boxArgs.small = true | | boxArgs.small = true |
| − | boxArgs.image = '[[File:Lua-logo-nolabel.svg|30px|alt=|link=]]' | + | boxArgs.image = '[[File:Lua-Logo.svg|30px|alt=|link=]]' |
| | return mMessageBox.main('mbox', boxArgs) | | return mMessageBox.main('mbox', boxArgs) |
| | end | | end |
| Line 82: |
Line 82: |
| | if not category then | | if not category then |
| | local categories = { | | local categories = { |
| − | ['Module:String'] = 'Lua String-based templates', | + | ['Module:String'] = 'Templates based on the String Lua module', |
| | ['Module:Math'] = 'Templates based on the Math Lua module', | | ['Module:Math'] = 'Templates based on the Math Lua module', |
| | ['Module:BaseConvert'] = 'Templates based on the BaseConvert Lua module', | | ['Module:BaseConvert'] = 'Templates based on the BaseConvert Lua module', |
| − | ['Module:Citation'] = 'Lua-based citation templates' | + | ['Module:Citation/CS1'] = 'Templates based on the Citation/CS1 Lua module' |
| | } | | } |
| − | categories['Module:Citation/CS1'] = categories['Module:Citation']
| |
| | category = modules[1] and categories[modules[1]] | | category = modules[1] and categories[modules[1]] |
| | category = category or 'Lua-based templates' | | category = category or 'Lua-based templates' |
| Line 111: |
Line 110: |
| | for i, module in ipairs(modules) do | | for i, module in ipairs(modules) do |
| | if module ~= "WP:libraryUtil" then | | if module ~= "WP:libraryUtil" then |
| − | local moduleProt = mw.title.new(module).protectionLevels["edit"][1] | + | local moduleTitle = mw.title.new(module) |
| | + | local moduleProt = moduleTitle and moduleTitle.protectionLevels["edit"][1] |
| | if moduleProt == nil then moduleProt = 0 else moduleProt = protLevels[moduleProt] end | | if moduleProt == nil then moduleProt = 0 else moduleProt = protLevels[moduleProt] end |
| | if moduleProt < currentProt then | | if moduleProt < currentProt then |