Module:Pp-move-indef
Revision as of 01:37, 18 September 2014 by Mr. Stradivarius (talk) (make fixes for when we are called from #invoke - the title parameter becomes a frame object)
Documentation for this module may be created at Module:Pp-move-indef/doc
-- This module implements [[Template:Pp-move-indef]]. local p = {} function p.main(title) if type(title) == 'string' then title = mw.title.new(title) elseif type(title) ~= 'table' or not title.text or not title.getContent then -- The title parameter is absent or not a title object. It could be a -- frame object if we are being called from #invoke. title = mw.title.getCurrentTitle() end local level = title and title.protectionLevels and title.protectionLevels.move and title.protectionLevels.move[1] local namespace = title and title.namespace local category if level == 'sysop' or level == 'templateeditor' then if namespace == 2 or namespace == 3 then category = 'Wikipedia move-protected user and user talk pages' elseif namespace == 4 or namepace == 12 then category = 'Wikipedia move-protected project pages' elseif namespace == 100 then category = 'Wikipedia move-protected portals' elseif title.isTalkPage then category = 'Wikipedia move-protected talk pages' else category = 'Wikipedia indefinitely move-protected pages' end else category = 'Wikipedia pages with incorrect protection templates' end return string.format( '[[%s:%s|%s]]', mw.site.namespaces[14].name, -- "Category" category, title.text -- equivalent of {{PAGENAME}} ) end return p