Module:Métiers et genre
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 redirect = require("Module:Redirect")
local qid = require("Module:Numéro Q")
local wd = require("Module:Wikidata")
--[[ Fonction compagnion pour "Modèle:Article_principal/Métiers et genre"
La requête est considérée comme "chère" selon le nombre d’article catégorisé ou le nombre de sous-catégorie
Souvent les grosses catégories comme "Catégorie:Footballeur" sont vides, mais en contrepartie ont plein de sous-catégories
--]]
function p.may_be_expensive(frame)
local category = frame.args[1]
local max_articles = frame.args["seuil_articles"] or 2000
local max_subcats = frame.args["seuil_subcats"] or 10
local number_of_articles = tonumber(
frame:preprocess(
"{{PAGESINCATEGORY:" .. category .. "|pages}}"))
if number_of_articles > max_articles then
return "cher"
else
local number_of_subcats = tonumber(frame:preprocess("{{PAGESINCATEGORY:" .. category .. "|subcats}}"))
if number_of_subcats > max_subcats then
return "cher"
end
end
return ""
end
-- Deviner l’identifiant du metier, depuis l’argument ou depuis Wikidata si le métier est une redirection
function p.metier_qid(frame)
if redirect.luaIsRedirect(frame.args[1]) then
return wd.getIds(nil, {property="P301"})[1]
else
return qid._numero(frame.args[1])
end
end
return p