词条 | Module:Pages with authority control identifiers |
释义 | require('Module:No globals') local p = {} local ac_conf = require('Module:Authority control').conf local currentTitle = mw.title.getCurrentTitle() local title = currentTitle.text local isCat = (currentTitle.namespace == 14) --==========================================================================--Local Utility Functions--==========================================================================local function whichTOC( frame ) local pageCount = mw.site.stats.pagesInCategory(title, 'pages') if pageCount >= 5000 then return frame:expandTemplate{ title = 'Large category TOC' } elseif pageCount > 400 then return frame:expandTemplate{ title = 'Category TOC', args = { align = 'center' } } end return end local function redCatCheck( catName ) --catName == 'Blah', not 'Category:Blah', not if catName and catName ~= and mw.title.new(catName, 14).exists == false then return end return end --==========================================================================--Local Category-Specific Functions--==========================================================================--For use in ,-- i.e. onlocal function pages( frame, id ) for _, conf in pairs( ac_conf ) do if conf.category == id or conf[1] == id then local link = conf[2] --not used locally yet local txCatMore = frame:expandTemplate{ title = 'Cat more', args = {'Wikipedia:Authority control'} } local txWPCat = frame:expandTemplate{ title = 'Wikipedia category' } local pagesCat = 'Pages with authority control information' local outString = txCatMore..txWPCat..'\'.. ..redCatCheck(pagesCat) return outString end end return end --For use in ,-- i.e. onlocal function misc( frame, id ) for _, conf in pairs( ac_conf ) do if conf.category == id or conf[1] == id then local link = conf[2] local txCatExplain = frame:expandTemplate{ title = 'Category explanation', args = { 'pages, other than main user pages or Wikipedia articles, using {{Authority control}} with '..link..' identifiers.' } } local txCatMore = frame:expandTemplate{ title = 'Cat more', args = {'Wikipedia:Authority control'} } local txEmptyCat = frame:expandTemplate{ title = 'Possibly empty category' } local txWPCat = frame:expandTemplate{ title = 'Wikipedia category', args = { hidden = 'yes', tracking = 'yes' } } local txTOC = whichTOC( frame ) local idCat = 'Pages with '..id..' identifiers' local miscCat = 'Miscellaneous pages with authority control information' local outString = txCatExplain..txCatMore..txEmptyCat..txWPCat..txTOC..'\'.. 'Pages in this category should only be added by Authority control.'.. ..redCatCheck(idCat).. ..redCatCheck(miscCat) return outString end end return end --For use in ,-- i.e. onlocal function user( frame, id ) for _, conf in pairs( ac_conf ) do if conf.category == id or conf[1] == id then local link = conf[2] --not used locally yet local txCatMore = frame:expandTemplate{ title = 'Cat more', args = {'Wikipedia:Authority control'} } local txEmptyCat = frame:expandTemplate{ title = 'Possibly empty category' } local txWPCat = frame:expandTemplate{ title = 'Wikipedia category', args = { hidden = 'yes', tracking = 'yes' } } local txTOC = whichTOC( frame ) local idCat = 'Pages with '..id..' identifiers' local userCat = 'User pages with authority control information' local outString = txCatMore..txEmptyCat..txWPCat..txTOC..'\'.. 'Pages in this category should only be added by Authority control.'.. ..redCatCheck(idCat).. ..redCatCheck(userCat) return outString end end return end --For use in ,-- i.e. onlocal function wp( frame, id ) for _, conf in pairs( ac_conf ) do if conf.category == id or conf[1] == id then local link = conf[2] local txCatExplain = frame:expandTemplate{ title = 'Category explanation', args = {'articles with '..link..' identifiers. Please do not add subcategories.'} } local txCatMore = frame:expandTemplate{ title = 'Cat more', args = {'Wikipedia:Authority control'} } local txEmptyCat = frame:expandTemplate{ title = 'Possibly empty category' } local txWPCat = frame:expandTemplate{ title = 'Wikipedia category', args = { hidden = 'yes', tracking = 'yes' } } local txTOC = whichTOC( frame ) local idCat = 'Pages with '..id..' identifiers' local wpCat = 'Wikipedia articles with authority control information' local outString = txCatExplain..txCatMore..txEmptyCat..txWPCat..txTOC..'\'.. 'Pages in this category should only be added by Authority control.'.. ..redCatCheck(idCat).. ..redCatCheck(wpCat) return outString end end return end --For use in ,-- i.e. onlocal function wpfaulty( frame, id ) for _, conf in pairs( ac_conf ) do if conf.category == id or conf[1] == id then local link = conf[2] --not used locally yet local param = conf[3] local txCatMore = frame:expandTemplate{ title = 'Cat more', args = {'Wikipedia:Authority control', 'd:Property:P'..param} } local txEmptyCat = frame:expandTemplate{ title = 'Possibly empty category' } local txWPCat = frame:expandTemplate{ title = 'Wikipedia category', args = { hidden = 'yes', tracking = 'yes' } } local txDirtyCat = frame:expandTemplate{ title = 'Polluted category' } local txTOC = whichTOC( frame ) local idCat = 'Pages with '..id..' identifiers' local wpfCat = 'Wikipedia articles with faulty authority control information' local outString = txCatMore..txEmptyCat..txWPCat..txDirtyCat..txTOC..'\'.. 'Pages in this category should only be added by Authority control.'.. ..redCatCheck(idCat).. ..redCatCheck(wpfCat) return outString end end return end --==========================================================================--Main/External Call--==========================================================================function p.autoDetect( frame ) if isCat then local pagesID = mw.ustring.match(title, 'Pages with ([%w%.%- ]+) identifiers') local miscID = mw.ustring.match(title, 'Miscellaneous pages with ([%w%.%- ]+) identifiers') local userID = mw.ustring.match(title, 'User pages with ([%w%.%- ]+) identifiers') local wpfaultyID = mw.ustring.match(title, 'Wikipedia articles with faulty ([%w%.%- ]+) identifiers') local wpID = mw.ustring.match(title, 'Wikipedia articles with ([%w%.%- ]+) identifiers')
if pagesID then return pages( frame, pagesID ) elseif miscID then return misc( frame, miscID ) elseif userID then return user( frame, userID ) elseif wpfaultyID then return wpfaulty( frame, wpfaultyID ) --must be before wpID check, in case they both match elseif wpID then return wp( frame, wpID ) --to keep the regex simple else return end end return end return p 22 : Blah|Pages with authority control identifiers red-linked category|Pages with authority control information|Pages with VIAF identifiers|'..pagesCat..'|Miscellaneous pages with authority control information|Miscellaneous pages with VIAF identifiers|'..idCat..'|'..miscCat..'|User pages with authority control information|User pages with VIAF identifiers|'..idCat..'|'..userCat..'|Wikipedia articles with authority control information|Wikipedia articles with VIAF identifiers|'..idCat..'|'..wpCat..'|Wikipedia articles with faulty authority control information|Wikipedia articles with faulty VIAF identifiers|'..idCat..'|'..wpfCat..'|Pages with authority control identifiers unknown category |
随便看 |
|
开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。