Module:Infobox/Fonctions/Personne
-- Functions utilisées par les infobox personnes local p = {} local wikidata = require('Module:Wikidata') local general = require('Module:Infobox/Fonctions') local d = require('Module:Wikidata/Dates')
-- ========== Fonctions d'aide ====================================
local function dateandplace(thedate, theplace)
if thedate and theplace then
return thedate .. '
' .. theplace
else
return thedate or theplace --retourne tout ce qu'il trouve
end
end
--Titre function p.title() return { type = 'title', value = 'nom', class = 'entete icon humain', } end
--Image function p.mainimage() return general.mainimage() end
--Naissance, décès function p.birth() -- date de naissance en première ligne, lieu de naissance en deuxième return { type = 'mixed', label = 'Naissance', value = function(localdata, item) local thedate, theplace = localdata['date de naissance'], localdata['lieu de naissance'] if not thedate then thedate = wikidata._formatAndCat({property= 'P569', rank = 'best', conjunction= ' ou '}) end if not theplace then theplace = wikidata._formatAndCat({property= 'P19', rank = 'best', conjunction= ' ou '}) end return dateandplace(thedate, theplace) end } end
function p.death() -- même fonctionnement que la fonction p.birth return { type = 'mixed', label = 'Décès', value = function(localdata, item) local thedate, theplace = localdata['date de décès'], localdata['lieu de décès'] if not thedate then thedate = wikidata._formatAndCat({property= 'P570', rank = 'best', conjunction= ' ou '}) end if not theplace then theplace = wikidata._formatAndCat({property= 'p20', rank = 'best', conjunction= ' ou '}) end return dateandplace(thedate, theplace) end } end
function p.nationality() --pour l'instant, ne retourne que la valeur donnée par le paramètre nationalité, ou, à defaut, la propriété p570 de Wikidata, à retravailler pour le formatage. return { type = 'mixed', label = 'Nationalité', value = 'nationalité', property = 'P27' } end -- Influences function p.influencedby() return { type = 'mixed', label = 'Influencé par', value = 'influencé par', property = 'P737',
}
end
function p.influenced() return { type = 'mixed', label = 'A influencé', value = 'a influencé', property = 'P738', } end
-- Signature function p.signature(default) return { type = 'images', imageparameters = {'signature'}, defaultimage = {default}, captionparameter = 'légende signature', defaultcaption = 'signature', defaultcaption = function() return defaultcaption end, property = 'P109', numval = 1 } end
--== Site web function p.website() return p.website() end
return p