Module:Infobox/Personnage coranique
[voir] [modifier] [historique] [purger]
Cette page définit un module d'infobox. Elle utilise des fonctions définies sur Module:Infobox/Fonctions/Personne. Pour les conseils sur l'usage de ce module, voyez Modèle:Infobox Personnage coranique.
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 personne = require "Module:Infobox/Fonctions/Personne"
local localdata = require 'Module:Infobox/Localdata'
local item = localdata.item
local wikidata = require "Module:Wikidata"
local datemodule = require 'Module:Date'
local birthdate = localdata['naissance'] or
localdata['date de naissance'] or
wikidata.formatAndCat{
entity = item,
property = 'P569',
unknownlabel = unknowndatelabel,
conjtype = 'or',
sorttype = 'chronological',
removedupesdate = 'cat',
minprecision = 8, --précision minimale pour être affichée : décennie
}
local deathdate = localdata['décès'] or localdata['date de décès']
local wddeathdate = wikidata.formatAndCat{
entity = item,
property = 'P570',
unknownlabel = unknowndatelabel,
conjtype = 'or',
sorttype = 'chronological',
removedupesdate = 'cat',
minprecision = 8,
}
local disappeardate = localdata['disparition']
local wddisappeardate = wikidata.formatAndCat{
entity = item,
property = 'P746',
unknownlabel = unknowndatelabel,
conjtype = 'or',
sorttype = 'chronological',
removedupesdate = 'cat',
showqualifiers = 'P276',
minprecision = 8,
}
-- NAISSANCE ET MORT
local function birth() -- date de naissance en première ligne, lieu de naissance en deuxième
return {
type = 'row',
label = 'Naissance',
value =
function()
local thedate = datemodule.dateInfobox{args = {[1] = 'naissance', [2] = birthdate or '', [3] = deathdate or wddeathdate or disappeardate or wddisappeardate or '', qualificatif = linktopic}}
return thedate
end
}
end
local function death() -- même fonctionnement que la fonction birth
-- date de disparition
local ldisappeardate = disappeardate
if (not ldisappeardate ) and (not deathdate) then -- récupérée de Wikidata seulement si la date de décès n'est pas fournie en locale
ldisappeardate = wddisappeardate
end
if ldisappeardate and birthdate then
ldisappeardate = datemodule.dateInfobox{args = {[1] = 'événement', [2] = birthdate or '', [3] = ldisappeardate or '', qualificatif = linktopic, unknownlabel = 'date inconnue'}}
end
-- date de décès
local ddate = deathdate --déclarée pour l'ensemble du module
if (not ddate) and (not ldisappeardate) then
deathdate = wddeathdate -- récupérée de Wikidata seulement si la date de disparition n'est pas fournie en locale
end
local thedate = datemodule.dateInfobox{args = {[1] = 'mort', [2] = birthdate or '', [3] = deathdate or '', qualificatif = linktopic, unknownlabel = 'date inconnue'}}
local val = thedate
return
{type = 'multi', rows = {
{ -- disparition
type = 'row',
label = 'Disparition',
value = function() return ldisappeardate end
},
{ -- décès
type = 'row',
label = 'Décès',
value = function() return val end,
}
}}
end
return {
maincolor = '#a7e8b6',
secondcolor = '#ccffcc',
parts = {
personne.title('islam'),
personne.mainimage('Article à illustrer Personnage coranique'),
personne.officialposition(),
personne.specialrole(),
personne.nobilitytitle(),
personne.honorifictitle(),
{type = 'table', title = 'Données clés', rows = {
{type = 'row', label = 'Nom en arabe', value = 'nom en arabe', property = 'P1705'},
birth(),
death(),
personne.family(),
}},
{type = 'table', title = 'Apparaît dans', rows = {
{type = 'row', value = 'mention', wikidata = {property = 'P1441', excludevalues = 'Q428', conjtype = 'comma'}},
}},
personne.works{title= 'Œuvres attribués'},
}
}