Module:Statistiques de portails
Apparence
La documentation de ce module est générée par le modèle {{Documentation module}}.
Les éditeurs peuvent travailler dans le bac à sable (créer).
Voir les statistiques d'appel depuis le wikicode sur l'outil wstat et les appels depuis d'autres modules.
local p = {}
local math_mod = require( "Module:Math" )
--Chargement de la liste En/Au/Aux/A
local gdata
local success, resultat = pcall (mw.loadData, "Module:Drapeau/Data" )
if success then
gdata = resultat
else
-- Banque de données à minima en cas de bogue dans le Module:Langue/Data
gdata={}
gdata.data={};
gdata.data[142]={qid="Q142", label="France", genre="fs"}
end
--Aide:Fonction_genre
local genre={
ms= {le="le " ,du="du " ,de="du " ,au="au " ,en="au "}
,msa= {le="l'" ,du="de l'" ,de="d'" ,au="à l'" ,en="en "}
,msi= {le="" ,du="de " ,de="de " ,au="à " ,en="à "}
,msia={le="" ,du="d'" ,de="d'" ,au="à " ,en="à "}
,fs= {le="la " ,du="de la ",de="de " ,au="à la " ,en="en "}
,fsa= {le="l'" ,du="de l'" ,de="d'" ,au="à l'" ,en="en "}
,fsi= {le="" ,du="de " ,de="de " ,au="à " ,en="à "}
,fsia={le="" ,du="d'" ,de="d'" ,au="à " ,en="à "}
,mp= {le="les ",du="des " ,de="des " ,au="aux " ,en="aux "}
,fp= {le="les ",du="des " ,de="des " ,au="aux " ,en="aux "}
}
function pagesInCategory(pays,portail)
local i = {}
if (portail == nil) then
portail=pays
end
i['portail']=portail
local paysId = gdata.idByName[string.lower(pays)]
local paysData =gdata.data[paysId]
local catPortail='Portail:' .. portail .. '/Articles liés'
i['catPortail']='Category:'..catPortail
i['articles']=mw.site.stats.pagesInCategory( catPortail, 'pages' )
local catgeo ='Article géolocalisé ' .. genre[paysData.genre].en .. ' ' .. paysData.label
local catgeoQ1 ='Article de qualité géolocalisé ' .. genre[paysData.genre].en .. ' ' .. paysData.label
local catgeoQ2 ='Bon article géolocalisé ' .. genre[paysData.genre].en .. ' ' .. paysData.label
i['catGeo']='Category:'..catgeo
i['geo']=mw.site.stats.pagesInCategory( catgeo, 'pages' )+mw.site.stats.pagesInCategory( catgeoQ1, 'pages' )+mw.site.stats.pagesInCategory( catgeoQ2, 'pages' )
i['geoRatio']= math.floor(10000*i['geo']/i['articles'])/100;
return i
end
function p.row(frame)
local args = frame.args
local i = {}
local tab = pagesInCategory(args[1],args[2])
return '\r\n!-\r\n'
..'| [[Portail:'..tab['portail']..']]*'
..'|| [[:'..tab['catPortail'] .. '|' .. tab['articles'] ..']]'
..'|| [[:'..tab['catGeo'] .. '|' .. tab['geo'] ..']]'
..'|| '.. tab['geoRatio'] .. '%'
end
return p