Module:Pagesincat
Apparence
La documentation pour ce module peut être créée à Module:Pagesincat/doc
-- module reproduisant le comportement de {{PAGESINCATEGORY}}
-- sans le bug
local p = {}
-- génère une erreur
function p.fota(texto)
return '<span class="fota">' .. (texto or "''gins de fôta endicâye''") .. "</span>"
end
-- pour tester la fonctionnalité "pageincategory"
function p.pagesincat(frame)
-- le nom de la catégorie
local args = ( frame.getParent and frame:getParent().args ) or frame -- préparation pour appel par modèle ou direct.
local cat = args[1]
-- le type de demande
local arg = (frame.args and frame.args["tipo"]) or args["tipo"]
-- mise en forme des nombres ?
local mef = args["mês’en fôrma"] or args["mês’en_fôrme"]
local sel -- la sélection
-- en l'absence de nom de catégorie on utilise la page courante
if (cat == nil or cat == "") then
local titro = mw.title.getCurrentTitle()
-- on vérifie qu'on est une catégorie
if (titro.namespace ~= 14) then
return p.fota("Pas de nom de pâge endicâ et la pâge corenta est pas na catègoria")
end
-- on utilise le titre de la page courante
cat = mw.title.getCurrentTitle().text
end
-- on regarde le paramètre
if (arg == "tôs" or arg == nil or arg == "*") then
sel = "all"
elseif (arg == "cats") then
sel = "subcats"
elseif (arg == "fichiérs") then
sel = "files"
elseif (arg == "pâges") then
sel = "pages"
else
return p.fota("paramètro '" .. (arg or "<nil>") .. "' pas recognu")
end
local res = mw.site.stats.pagesInCategory(cat, sel)
if (res == nil) then
return p.fota("fôta de rècupèracion de les enformacions")
end
-- si mise en forme on applique
if (mef ~= nil) then
return mw.getContentLanguage():formatNum(res)
else
return tostring(res)
end
end
return p