« Module:Infobox/Biographie » : différence entre les versions

De Lagny-sur-Marne Wiki
Aller à la navigation Aller à la recherche
0x010D (discussion | contributions)
Aucun résumé des modifications
0x010D (discussion | contributions)
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
local person = require "Module:Infobox/Fonctions/Personne"
local person = require "Module:Infobox/Fonctions/Personne"
local wd = require "Module:Interface Wikidata".fromLua
local occupationformats = {
--{profession, couleur, icône)  doivent être classés du plus spécifique au plus général
{'Q947873',  '#D9D9FF', 'television'}, -- animateur audiovisuel
{'Q715301',  '#FFEEAA', 'bd'}, -- auteur de bande dessinée
{'Q1350189', '#CCCCAA', 'egypte-antique'}, -- égyptologue
{'Q3621491', '#CCCCAA', 'defaut'}, -- archéologue
{'Q42973', '#4C6099', 'defaut'}, -- architecte
{'Q2159907', '#F2F2F2', 'defaut'}, -- criminel
{'Q11900058', '#EEEEFF', 'map'}, -- explorateur
{'Q12039558', '#EEEEFF', 'jeu'}, -- joueur de go
{'Q15295720', '#4E957D', 'poker'}, -- joueur de poker
{'Q14467526', '#CFA0E9', 'auteur'}, -- linguiste
{'Q177220', '#B6CCDE', 'musique'}, -- chanteur
{'Q1278335', '#D2C6B6', 'musique'}, -- instrumentiste
{'Q3089940', '#B4CDCD', 'musique'}, -- producteur de musique
{'Q36834', '#B4CDCD', 'musique'}, -- compositeur
{'Q1643514', '#B4CDCD', 'musique'}, -- arrangeur
{'Q15981151', '#B2FFC6', 'musique'}, -- musicien de jazz
{'Q5716684', '#FFFF80', 'musique'}, -- danseur
{'Q1954956', '#D9B2FF', 'musique'}, -- acteur de comédie musicale
{'Q2259451', '#B03030', 'persofiction'}, -- acteur de théâtre
{'Q4964182', '#B0C4DE', 'auteur'}, -- philosophe
{'Q11631', '#FFDEAD', 'defaut'}, -- astronaute
{'Q17125263', '#FF0000', 'informatique'}, -- YouTubeur
{'Q854997', '#FFD068', 'defaut'}, -- moine bouddhiste
{'Q245068', '#FF8080', 'persofiction'}, -- humoriste
{'Q488111', '#FF66B3', 'cinema'}, -- acteur de films pornographiques
{'Q37110', '#AAAA80', 'egypte-antique'}, -- pharaon
{'Q728711', '#FF66B3', 'humain'}, -- Playmate
{'Q18581305', '#FFDAB9', 'humain'}, -- participant à un concours de beauté
{'Q203184', '#DCDCDC', 'defaut'}, -- première dame
{'Q5784340', '#723E64', 'pretendant'}, -- consort
{'Q207293', '#5977A8', 'pretendant'}, -- prince héritier
{'Q2747456', '#878787', 'pretendant'}, -- prince
{'Q845929', '#EAAC00', 'pretendant'}, -- prétendant au trône
{'Q4610556', '#FFB6C1', 'humain'}, -- mannequin
{'Q2478141', '#DFDFDF', 'defaut'}, -- aristocrate
{'Q37349', '#FF8888', 'humain'}, -- dalaï-lama
{'Q842606', '#FFB6C1', 'defaut'}, -- empereur romain
{'Q268218', '#FFD700', 'defaut'}, -- empereur de Chine
{'Q116', '#000080', 'pretendant'}, -- monarque
{'Q11811941', '#FF0000', 'defaut'}, -- conseiller fédéral suisse
{'Q2285706', '#6688FF', 'defaut'}, -- chef de gouvernement
{'Q48352', '#0033CC', 'defaut'}, -- chef d'État
{'Q15319501', '#5A71CE', 'default'}, -- spécialiste des sciences sociales
{'Q133485', '#B7B7FF', 'israel-judaisme'}, -- rabbin
{'Q191421', '#FF8888', 'defaut'}, -- lama
{'Q619896', '#8000FF', 'defaut'}, -- catholicos
{'Q13382355', '#FADA5E', 'arc'}, -- archer
{'Q11513337', '#D7877B', 'athletisme'}, -- athlète
{'Q13382576', '#BFD7FF', 'aviron'}, -- avironneur
{'Q10871364', '#408080', 'baseball'}, -- joueur de baseball
{'Q3665646', '#DD8F56', 'basket-ball'}, -- joueur de basket-ball
{'Q11338576', '#85A3C2', 'boxe'}, -- boxeur
{'Q13382566', '#BFD7FF', 'kayak'}, -- canoéiste
{'Q2309784', '#FFDF80', 'cyclisme'}, -- coureur cycliste
{'Q13381863', '#C0BBDB', 'escrime'}, -- escrimeur
{'Q18515558', '#99CC99', 'futsal'}, -- joueur de futsal
{'Q937857', '#99CC99', 'footballblack'}, -- footballeur
{'Q19841381', '#BFD33C', 'defaut'}, -- joueur de football canadien
{'Q16947675', '#B0C4DE', 'gymnastique'}, -- gymnaste
{'Q13156709', '#007700', 'golf'}, -- golfeur
{'Q13365117', '#E0D080', 'handballblack'}, -- handballeur
{'Q9017214', '#FFDFA2', 'karate'}, -- karatéka
{'Q16004471', '#BFD7FF', 'kayak'}, -- kayakiste
{'Q11774891', '#DFEDFF', 'hockey'}, -- joueur de hockey sur glace
{'Q10843263', '#BFD7FF', 'hockey-sur-gazon'}, -- joueur de hockey sur gazon
{'Q10843402', '#318CE7', 'natation'}, -- nageur
{'Q15958185', '#B4B9C3', 'sport-automobile'}, -- pilote automobile
{'Q3014296', '#B4B9C3', 'sport-automobile'}, -- pilote de moto
{'Q2730732', '#D2B48C', 'equitation'}, -- cavalier
{'Q20965770', '#DFEDFF', 'defaut'}, -- pratiquant de sports d'hiver
{'Q11124885', '#FFDFA2', 'artsmartiauxjap'}, -- pratiquant d'arts martiaux
{'Q20900796', '#BFD7FF', 'rinkhockey'}, -- joueur de rink hockey
{'Q14089670', '#336699', 'rugbyblack'}, -- joueur de rugby à XV
{'Q13561328', '#99CCFF', 'surf'}, -- surfeur
{'Q10833314', '#FFAA77', 'tennis'}, -- joueur de tennis
{'Q13141064', '#FFAA77', 'badminton'}, -- joueur de badminton
{'Q16278103', '#FFAA77', 'squash'}, -- joueur de squash
{'Q13382519', '#FFAA77', 'tennis-de-tableblack'}, -- joueur de tennis de table
{'Q15117302', '#97D98C', 'volleyball'}, -- volleyeur
{'Q17524364', '#BFD7FF', 'water-polo'}, -- joueur de water-polo
{'Q549322', '#AA3333', 'defaut'}, -- torero
{'Q12299841', '#AA3333', 'defaut'}, -- joueur de cricket
{'Q13474373', '#DFEDFF', 'catch'}, -- catcheur
{'Q202648', '#CCE6CC', 'arbitre'}, -- arbitre sportif
{'Q103163', '#8C8C8C', 'defaut'}, -- abbé
{'Q611644', '#66CC80', 'eveque'}, -- évêque catholique
{'Q49476', '#66CC80', 'eveque'}, -- archévêque
{'Q171692', '#66CC80', 'defaut'}, -- patriarche
{'Q45722', '#DE143C', 'cardinal'}, -- cardinal
{'Q19546', '#FED600', 'defaut'}, -- pape
{'Q172748', '#FED600', 'defaut'}, -- antipape
{'Q9591034', '#FED600', 'defaut'}, -- bienheureux
{'Q43115', '#FED600', 'defaut'}, -- saint
{'Q250867', '#8C8C8C', 'defaut'}, -- prêtre catholique
{'Q725440', '#AA0052', 'defaut'}, -- prélat
{'Q81066', '#6495ED', 'defaut'}, -- secrétaire général de l'ONU
{'Q20778343', '#F2F2F2', 'defaut'}, -- magistrat romain
{'Q15253558', '#E1E1E1', 'defaut'}, -- militant
{'Q1250916', '#EEEEFF', 'defaut'}, -- guerrier
{'Q2722764', '#D9D9FF', 'communication'}, -- animateur de radio
{'Q3186984', '#D9D9FF', 'presse'}, -- journaliste de presse écrite
{'Q1930187', '#D9D9FF', 'defaut'}, -- journaliste
{'Q17291399', '#09c8bd', 'cinema'}, -- personnalité du cinéma
{'Q2066131', '#BFD7FF', 'defaut'}, -- sportif
{'Q82955', '#4682B4', 'defaut'}, -- personnalité politique
{'Q36180', '#4C6099', 'auteur'}, -- écrivain
{'Q483501', '#7DA7D9', 'artiste'}, -- artiste
{'Q901', '#EEEEFF', 'defaut'}, -- scientifique
}
local function setformat() --retourne une table contenant la couleur principale de l'infobox et l'icône de titre
local occupations = wd.stringTable{entity = item, property = 'P106', displayformat = 'raw'} -- récupère les Qid des professions
if not occupations or (#occupations > 1) then -- si plusieurs occupations, on ne sait pas laquelle choisir
return  {'#EEEEFF', 'defaut'}
end
occupations = wd.addVals(occupations, {property = 'P279'}, 2) -- nombre d'étages de sous-classes à remonter
for i, j in pairs(occupationformats) do
for k, l in pairs(occupations) do
if j[1] == l then
return {j[2], j[3]}
end
end
end
return {'#eeeeff', 'defaut'}
end
local personformat = setformat()


return  
return  
{
{
maincolor = '#eeeeff',
maincolor = personformat[1],
parts =
parts =
     {
     {
person.title(),
person.title(personformat[2]),
person.mainimage(),
person.mainimage(),
{type = 'table',rows = {
{type = 'table',rows = {

Version du 11 septembre 2015 à 20:23

local person = require "Module:Infobox/Fonctions/Personne" local wd = require "Module:Interface Wikidata".fromLua

local occupationformats = { --{profession, couleur, icône) doivent être classés du plus spécifique au plus général {'Q947873', '#D9D9FF', 'television'}, -- animateur audiovisuel {'Q715301', '#FFEEAA', 'bd'}, -- auteur de bande dessinée {'Q1350189', '#CCCCAA', 'egypte-antique'}, -- égyptologue {'Q3621491', '#CCCCAA', 'defaut'}, -- archéologue {'Q42973', '#4C6099', 'defaut'}, -- architecte {'Q2159907', '#F2F2F2', 'defaut'}, -- criminel {'Q11900058', '#EEEEFF', 'map'}, -- explorateur {'Q12039558', '#EEEEFF', 'jeu'}, -- joueur de go {'Q15295720', '#4E957D', 'poker'}, -- joueur de poker {'Q14467526', '#CFA0E9', 'auteur'}, -- linguiste {'Q177220', '#B6CCDE', 'musique'}, -- chanteur {'Q1278335', '#D2C6B6', 'musique'}, -- instrumentiste {'Q3089940', '#B4CDCD', 'musique'}, -- producteur de musique {'Q36834', '#B4CDCD', 'musique'}, -- compositeur {'Q1643514', '#B4CDCD', 'musique'}, -- arrangeur {'Q15981151', '#B2FFC6', 'musique'}, -- musicien de jazz {'Q5716684', '#FFFF80', 'musique'}, -- danseur {'Q1954956', '#D9B2FF', 'musique'}, -- acteur de comédie musicale {'Q2259451', '#B03030', 'persofiction'}, -- acteur de théâtre {'Q4964182', '#B0C4DE', 'auteur'}, -- philosophe {'Q11631', '#FFDEAD', 'defaut'}, -- astronaute {'Q17125263', '#FF0000', 'informatique'}, -- YouTubeur {'Q854997', '#FFD068', 'defaut'}, -- moine bouddhiste {'Q245068', '#FF8080', 'persofiction'}, -- humoriste {'Q488111', '#FF66B3', 'cinema'}, -- acteur de films pornographiques {'Q37110', '#AAAA80', 'egypte-antique'}, -- pharaon {'Q728711', '#FF66B3', 'humain'}, -- Playmate {'Q18581305', '#FFDAB9', 'humain'}, -- participant à un concours de beauté {'Q203184', '#DCDCDC', 'defaut'}, -- première dame {'Q5784340', '#723E64', 'pretendant'}, -- consort {'Q207293', '#5977A8', 'pretendant'}, -- prince héritier {'Q2747456', '#878787', 'pretendant'}, -- prince {'Q845929', '#EAAC00', 'pretendant'}, -- prétendant au trône {'Q4610556', '#FFB6C1', 'humain'}, -- mannequin {'Q2478141', '#DFDFDF', 'defaut'}, -- aristocrate {'Q37349', '#FF8888', 'humain'}, -- dalaï-lama {'Q842606', '#FFB6C1', 'defaut'}, -- empereur romain {'Q268218', '#FFD700', 'defaut'}, -- empereur de Chine {'Q116', '#000080', 'pretendant'}, -- monarque {'Q11811941', '#FF0000', 'defaut'}, -- conseiller fédéral suisse {'Q2285706', '#6688FF', 'defaut'}, -- chef de gouvernement {'Q48352', '#0033CC', 'defaut'}, -- chef d'État {'Q15319501', '#5A71CE', 'default'}, -- spécialiste des sciences sociales {'Q133485', '#B7B7FF', 'israel-judaisme'}, -- rabbin {'Q191421', '#FF8888', 'defaut'}, -- lama {'Q619896', '#8000FF', 'defaut'}, -- catholicos {'Q13382355', '#FADA5E', 'arc'}, -- archer {'Q11513337', '#D7877B', 'athletisme'}, -- athlète {'Q13382576', '#BFD7FF', 'aviron'}, -- avironneur {'Q10871364', '#408080', 'baseball'}, -- joueur de baseball {'Q3665646', '#DD8F56', 'basket-ball'}, -- joueur de basket-ball {'Q11338576', '#85A3C2', 'boxe'}, -- boxeur {'Q13382566', '#BFD7FF', 'kayak'}, -- canoéiste {'Q2309784', '#FFDF80', 'cyclisme'}, -- coureur cycliste {'Q13381863', '#C0BBDB', 'escrime'}, -- escrimeur {'Q18515558', '#99CC99', 'futsal'}, -- joueur de futsal {'Q937857', '#99CC99', 'footballblack'}, -- footballeur {'Q19841381', '#BFD33C', 'defaut'}, -- joueur de football canadien {'Q16947675', '#B0C4DE', 'gymnastique'}, -- gymnaste {'Q13156709', '#007700', 'golf'}, -- golfeur {'Q13365117', '#E0D080', 'handballblack'}, -- handballeur {'Q9017214', '#FFDFA2', 'karate'}, -- karatéka {'Q16004471', '#BFD7FF', 'kayak'}, -- kayakiste {'Q11774891', '#DFEDFF', 'hockey'}, -- joueur de hockey sur glace {'Q10843263', '#BFD7FF', 'hockey-sur-gazon'}, -- joueur de hockey sur gazon {'Q10843402', '#318CE7', 'natation'}, -- nageur {'Q15958185', '#B4B9C3', 'sport-automobile'}, -- pilote automobile {'Q3014296', '#B4B9C3', 'sport-automobile'}, -- pilote de moto {'Q2730732', '#D2B48C', 'equitation'}, -- cavalier {'Q20965770', '#DFEDFF', 'defaut'}, -- pratiquant de sports d'hiver {'Q11124885', '#FFDFA2', 'artsmartiauxjap'}, -- pratiquant d'arts martiaux {'Q20900796', '#BFD7FF', 'rinkhockey'}, -- joueur de rink hockey {'Q14089670', '#336699', 'rugbyblack'}, -- joueur de rugby à XV {'Q13561328', '#99CCFF', 'surf'}, -- surfeur {'Q10833314', '#FFAA77', 'tennis'}, -- joueur de tennis {'Q13141064', '#FFAA77', 'badminton'}, -- joueur de badminton {'Q16278103', '#FFAA77', 'squash'}, -- joueur de squash {'Q13382519', '#FFAA77', 'tennis-de-tableblack'}, -- joueur de tennis de table {'Q15117302', '#97D98C', 'volleyball'}, -- volleyeur {'Q17524364', '#BFD7FF', 'water-polo'}, -- joueur de water-polo {'Q549322', '#AA3333', 'defaut'}, -- torero {'Q12299841', '#AA3333', 'defaut'}, -- joueur de cricket {'Q13474373', '#DFEDFF', 'catch'}, -- catcheur {'Q202648', '#CCE6CC', 'arbitre'}, -- arbitre sportif {'Q103163', '#8C8C8C', 'defaut'}, -- abbé {'Q611644', '#66CC80', 'eveque'}, -- évêque catholique {'Q49476', '#66CC80', 'eveque'}, -- archévêque {'Q171692', '#66CC80', 'defaut'}, -- patriarche {'Q45722', '#DE143C', 'cardinal'}, -- cardinal {'Q19546', '#FED600', 'defaut'}, -- pape {'Q172748', '#FED600', 'defaut'}, -- antipape {'Q9591034', '#FED600', 'defaut'}, -- bienheureux {'Q43115', '#FED600', 'defaut'}, -- saint {'Q250867', '#8C8C8C', 'defaut'}, -- prêtre catholique {'Q725440', '#AA0052', 'defaut'}, -- prélat {'Q81066', '#6495ED', 'defaut'}, -- secrétaire général de l'ONU {'Q20778343', '#F2F2F2', 'defaut'}, -- magistrat romain {'Q15253558', '#E1E1E1', 'defaut'}, -- militant {'Q1250916', '#EEEEFF', 'defaut'}, -- guerrier {'Q2722764', '#D9D9FF', 'communication'}, -- animateur de radio {'Q3186984', '#D9D9FF', 'presse'}, -- journaliste de presse écrite {'Q1930187', '#D9D9FF', 'defaut'}, -- journaliste {'Q17291399', '#09c8bd', 'cinema'}, -- personnalité du cinéma {'Q2066131', '#BFD7FF', 'defaut'}, -- sportif {'Q82955', '#4682B4', 'defaut'}, -- personnalité politique {'Q36180', '#4C6099', 'auteur'}, -- écrivain {'Q483501', '#7DA7D9', 'artiste'}, -- artiste {'Q901', '#EEEEFF', 'defaut'}, -- scientifique }

local function setformat() --retourne une table contenant la couleur principale de l'infobox et l'icône de titre local occupations = wd.stringTable{entity = item, property = 'P106', displayformat = 'raw'} -- récupère les Qid des professions if not occupations or (#occupations > 1) then -- si plusieurs occupations, on ne sait pas laquelle choisir return {'#EEEEFF', 'defaut'} end occupations = wd.addVals(occupations, {property = 'P279'}, 2) -- nombre d'étages de sous-classes à remonter for i, j in pairs(occupationformats) do for k, l in pairs(occupations) do if j[1] == l then return {j[2], j[3]} end end end return {'#eeeeff', 'defaut'} end local personformat = setformat()

return { maincolor = personformat[1], parts =

   	{

person.title(personformat[2]), person.mainimage(), {type = 'table',rows = { person.birth(), person.death(), person.othernames(), person.nationality(), person.places(), {type = 'row', label = 'Langue maternelle', value = 'langue maternelle', property = 'P103'}, person.education(), person.occupation(), {type = 'row', label = 'Organisation', value = 'organisation', property = 'P1268'}, person.employer(), {type = 'row', label = 'Domaine', value = 'domaine', property = 'P101'}, person.politicalparty(), person.military(), person.sport(), person.contacts(), person.appearance(), person.family(), person.awards(), person.website(), }, }, person.officialposition(), person.works(), person.signature(), } }