Module:Classement
Apparence
[voir] [modifier] [historique] [purger]
Utilisation
Fonction utilisable depuis un autre module Lua :
fonction formattedlist(item, params)
– prend pour argument l'identifiant Wikidata d'un monument (ou la table complète de son élément Wikidata déjà chargée) et liste les protections patrimoniales dont il fait l'objet. params désigne les paramètres habituels des fonction Wikidata voir Module:Wikidata/Documentation).
- Le comportement de cette fonction est proche de celui de Module:Wikidata.formatStatements{property ="P1425", showdate = true, precision = "year", showqualifiers = "P518"} mais des mises en forme supplémentaires sont effectuées pour éviter les répétitions et rendre le texte plus naturel.
La documentation de ce module est générée par le modèle {{Documentation module}}.
Elle est incluse depuis sa sous-page de documentation. Veuillez placer les catégories sur cette page-là.
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 formattingdata = mw.loadData('Module:Classement/Données')
local wikidata = require('Module:Wikidata')
function p.formattedList(item)
local claims = wikidata.getClaims({item = item, property = 'P1435', exludespecial = true})
if not claims then
return nil
end
local statuses = {}-- nouvelle table pour ne pas afficher séparément deux statements décrivant le même statut
for i, j in pairs(claims) do
local pstatus = wikidata.getmainid(j)
if not statuses[pstatus] then
statuses[pstatus] = {j}
else
table.insert(statuses[pstatus], j)
end
end
local stringtable = {} -- liste des chaînes à retourner
for i, j in pairs(statuses) do
local mainstr = ''
if formattingdata[i] then
mainstr = formattingdata[i][1]
else
mainstr = wikidata.formatEntity(i)
end
local logostr = ''
if formattingdata[i] and formattingdata[i][2] then
logostr = '[[File:' .. formattingdata[i][2] .. '|x18px]] '
end
local t = {} -- informations complémentaires sur les dates et les parties concernées
for k, l in pairs(j) do
local protectiondate = wikidata.getFormattedQualifiers(l, {'P580'}, {precision = 'year'})
if protectiondate then
table.insert(t, protectiondate)
end
end
local details = table.concat(t, ", ")
if details ~= '' then
details = ' <small>(' .. details .. ')</small>'
else
details = ''
end
table.insert(stringtable, logostr .. mainstr .. details)
end
return table.concat(stringtable, '<br />') .. '[[Catégorie:Page utilisant des données de Wikidata/P1435]]'
end