Modifications
Module:Infobox/Organisation (voir la source)
Version du 21 avril 2020 à 21:59
, 21 avril 2020 à 21:59+charte
local generic = require "Module:Infobox/Fonctions"
local localdata = require "Module:Infobox/Localdata"
local organisation = require "Module:Infobox/Fonctions/Organisation"
local wd = require "Module:Wikidata"
local chartes = {
-- {titre charte, élément wikidata, couleur titre, couleur texte, pictogramme}
{'agence fédérale aux États-Unis', 'Q20857065', '#3c3b6e', '#FFF', 'musee'},
{'dicastère', 'Q1225300', '#FFE8BF', '#000', 'eveque'},
{'institut de recherche', 'Q31855', '#8089b7', '#FFF', 'universite'},
{'institution des Nations unies', 'Q15925165', '#4B92DB', '#FFF', 'nations-unies'},
{'institution européenne', 'Q4936585', '#003399', '#FFF', 'union-europeenne'},
{'organisme sans but lucratif', 'Q163740', '6e77ef', '#FFF', 'association'},
{'parti politique', 'Q7278', '#E1E1E1', '#000', 'defaut'},
{'société nationale de la Croix-Rouge', 'Q1968122', '#CC0000', '#FFF', 'medecine'},
{'société savante', 'Q955824', '#FFDEAD', '#000', 'universite'},
{'syndicat', 'Q681615', '#D20012', '#FFF', 'association'},
}
local function setformat()
local instanceof = wd.getIds(localdata.item, {property = 'P31'})
if not instanceof then
return {'Q', '', '#323996', '#FFF', 'defaut'}
end
instanceof = wd.addVals(instanceof, {property = 'P279'}, 2)
for i, j in pairs(instanceof) do
for k, l in pairs(chartes) do
if l[2] == j then
return l
end
end
end
return {'Q', '', '#323996', '#FFF', 'defaut'}
end
local function setcharte()
if localdata['charte'] then
charte = localdata['charte']
for i, j in pairs(chartes) do
if j[1] == charte then
return j
end
end
end
return setformat()
end
local infoboxformat = setcharte()
local defaultquery = {property = {'P101', 'P366', 'P361', 'P279'}}
return {
maincolor = infoboxformat[3],
secondcolor = infoboxformat[3],
thirdcolor = infoboxformat[4],
parts =
{
generic.title(infoboxformat[5]),
generic.logo('Article à illustrer Organisation'),
generic.blason(),
generic.flag(),
generic.locationmap(),
generic.mainimage('Article à illustrer Organisation'),
{type = 'table',
rows = {
{type = 'row', value = {'devise', 'slogan', 'association_slogan'}, wikidata = {property = 'P1451', showlang = true, isinlang = {'fr', 'en', 'la'}, conjtype = 'new line'}, style = { ['text-align'] = 'center', ['font-size'] = '0.9em', ['font-weight'] = 'normal', ['font-style'] = 'italic' }},
}
},
{type = 'table', title = localdata['histoire'] or wd.formatStatements{entity = id, property = 'P2184', withlink = 'frwiki'} or 'Histoire',
rows = {
{type = 'row', label = 'Fondation', value = {'création', 'fondation', 'date_de_fondation'}, wikidata = {property = {'P571', 'P740'}, showqualifiers = {'P518', 'P1810', 'P4649'}, conjtype = 'new line'}},
{type = 'row', label = 'Dissolution', value = 'dissolution', property = 'P576'},
{type = 'row', label = 'Origine', value = {'origine'}},
{type = 'row', label = 'Prédécesseur', plurallabel = 'Prédécesseurs', value = {'remplace', 'a remplacé', 'prédécesseur'}, wikidata = {property = {'P1365', 'P155', 'P1398'}, removedupes = true}},
{type = 'row', label = 'Successeur', plurallabel = 'Successeurs', value = {'remplacé par', 'successeur'}, wikidata = {property = {'P1366', 'P156', 'P167'}, removedupes = true}},
{type = 'row', label = 'Scission de', value = {'scission de'}},
{type = 'row', label = 'Fusion de', value = {'fusion de'}},
{type = 'row', label = 'Scission dans', value = {'scission dans'}},
{type = 'row', label = 'Fusionné dans', value = {'fusionné dans'}},
}
},
{type = 'table', title='Cadre',
rows = {
{type = 'row', label = 'Sigle', plurallabel = 'Sigles', value = {'surnom', 'sigle', 'acronyme'}, wikidata = {property = {'P1449', 'P1813'}, showlang = true, isinlang = {'fr', 'en'}}},
{type = 'row', label = 'Code', plurallabel = 'Code', value = 'code'},
{type = 'row', label = '[[Zone d\'activité]]', value = {'couverture', 'région', 'zone opérationnelle', 'zone d\'influence'}, wikidata = {property = 'P2541', speciallabels = {Q13780930 = '[[Fichier:Flag of the United Nations.svg|20px|Monde|class=noviewer thumbborder]] [[Monde (univers)|Monde entier]]', Q46 = '[[Fichier:Flag of Europe.svg|20px|Europe|class=noviewer thumbborder]] [[Europe]]'}}},
{type = 'row', label = 'Type', value = {'type', 'association_type'}, wikidata = {property = 'P31', removedupes = true, showqualifiers = {'P642', 'P459', 'P1013', 'P5102'}, qualifconjtype = 'comma', defaultlink = '-', defaultlinkquery = defaultquery}},
{type = 'row', label = '[[Forme juridique]]', value = 'forme juridique', wikidata = {property = 'P1454', showqualifiers = 'P4649', defaultlink = '-', defaultlinkquery = defaultquery, rank = 'valid', showdate = true, sorttype = 'chronological', conjtype = 'new line'}},
{type = 'row', label = 'Structure', value = 'structure'},
{type = 'row', label = '[[Objet social]]', plurallabel = '[[Objet social|Objets sociaux]]', value = {'objet social', 'objets sociaux'}, wikidata = {property = 'P6346'}},
{type = 'row', label = 'Domaine d\'activité', plurallabel = 'Domaines d\'activité', value = {'discipline', 'disciplines', 'domaine', 'domaines', 'secteur'}, wikidata = {property = {'P101', 'P452', 'P2650'}, defaultlink = '-', defaultlinkquery = defaultquery}},
{type = 'row', label = '[[Mouvement culturel|Mouvement]]', value = {'mouvement'}, wikidata = {property = 'P135'}},
{type = 'row', label = '[[Financement]]', value = 'financement', wikidata = {property = 'P2770', speciallabels = {Q193219 = '[[subvention]]s', Q1124860 = '[[dons]]'}, conjtype = "and"}},
{type = 'row', label = 'Objectif', plurallabel = 'Objectifs', value = {'but', 'objectif', 'objectifs'}, property = {'P3712'}},
{type = 'row', label = 'Méthode', plurallabel = 'Méthodes', value = {'méthode', 'methode'}},
{type = 'row', label = 'Campus', value = 'campus'},
{type = 'row', label = 'Siège social', value = {'siège', 'siège social', 'adresse', 'localisation', 'ville', 'siege'}, wikidata = {property = 'P159', defaultlink = '-', defaultlinkquery = {property = {'P669', 'P131', 'P466'}}, showqualifiers = {'P670', 'P969', 'P669', 'P281', 'P131', 'P17'}, qualifconjtype = 'comma', labelformat = function(id) local label = wd.getLabel(id) if mw.ustring.match(label, '%de') then return mw.ustring.gsub(label, '(%d)(e%l?)', '%1<sup>%2</sup>', 1) else return label end end}},
generic.country(),
generic.coordinates(),
{type = 'row', label = '[[Langue]]', plurallabel = '[[Langue]]s', value = {'langue', 'langues', 'langue officielle', 'langues officielles'}, wikidata = {property = 'P37', showqualifiers = 'P4626'}},
{type = 'row', label = '[[Langue de travail]]', plurallabel = '[[Langue de travail|Langues de travail]]', value = {'langue de travail', 'langues de travail'}, wikidata = {property = 'P2936', showqualifiers = 'P4626'}},
}
},
{type = 'table', title='Organisation',
rows = {
organisation.membres(id),
organisation.custom(),
-- Entités liées
{type = 'row', label = 'Organisation mère', plurallabel = 'Organisations mères', value = {'organisation mère', 'société mère', 'organisme'}, wikidata = {property = 'P749', showdate = true, sorttype = 'chronological', showqualifiers = {'P1001'}, conjtype = 'new line'}},
{type = 'row', label = 'Branche', plurallabel = 'Branches', value = 'branche', property = 'P199'},
{type = 'row', label = 'Partenaire', plurallabel = 'Partenaires', value = 'partenaire', property = 'P2652'},
{type = 'row', label = 'Dépend de', value = 'dépend de'},
{type = 'row', label = 'Affiliation', value = {'affiliation', 'affiliation_europeenne', 'affiliation_internationale', 'rattachement'}, wikidata = {property = {'P1416', 'P463'}, showdate = true, defaultlinkquery = {property = {'P749', 'P127', 'P112'}}, qualifdefaultlinkquery = defaultquery, showqualifiers = {'P2868', 'P1416', 'P3831'}}},
{type = 'row', label = 'Sponsor', plurallabel = 'Sponsors', hidden = true, value = 'sponsor', wikidata = {property = 'P859', defaultlinkquery = {property = {'P749', 'P127', 'P112'}}}},
-- Orientation politique
{type = 'row', label = '[[Idéologie]]', value = {'idéologie', 'orientation politique', 'politique', 'pol'}, wikidata = {property = 'P1142'}},
{type = 'row', label = '[[Échiquier politique|Positionnement]]', value = {'positionnement', 'positionnement politique'}, wikidata = {property = 'P1387'}},
{type = 'row', label = '[[Coalition politique]]', plurallabels = '[[Coalition politique|Coalitions politiques]]', value = {'coalition', 'coalition politique'}, wikidata = {property = 'P5832'}},
{type = 'row', label = '[[Groupe parlementaire]]', value = {'groupe parlementaire', 'parlement'}, wikidata = {property = 'P4100'}},
-- Situation financière
{type = 'row', label = 'Budget', value = 'budget', wikidata = {property = 'P2769', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Chiffre d\'affaires', value = 'chiffre d\'affaires', wikidata = {property = 'P2139', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Résultat net', value = 'résultat net', wikidata = {property = 'P2295', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Dépenses', value = {'dépenses', 'dépenses annuelles', 'dépenses totales'}, wikidata = {property = 'P2402', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Capitalisation boursière', value = 'capitalisation', wikidata = {property = 'P2226', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Cotation', plurallabel = 'Cotations', value = 'cotation', wikidata = {property = 'P414', showqualifiers = 'P249', conjtype = 'new line'}},
{type = 'row', label = 'Notation', value = 'notation'},
-- Divers
{type = 'row', label = 'Récompense', plurallabel = 'Récompenses', value = 'récompense', wikidata = {property = 'P166', showdate = true, sorttype = 'chronological', conjtype = 'new line', defaultlink = '-', defaultlinkquery = {property = 'P1027'}}},
{type = 'row', label = 'Produit', plurallabel = 'Produits', value = 'produit', property = 'P1056'},
{type = 'row', label = '[[Représentativité syndicale en France|Représentativité]]', value = {'representativite', 'représentativité'}},
{type = 'row', label = 'Publication', plurallabel = 'Publications', value = {'organe de presse', 'publication', 'publications'}, wikidata = {property = 'P2813', showdate = true, sorttype = 'chronological', conjtype = 'new line', defaultlink = '-', defaultlinkquery = {property = 'P123', 'P1433'}, labelformat = function(id) local label = wd.getLabel(id) if label then return '<i>' .. label .. '</i>' end end}},
generic.website(),
{type = "mixed", label = "Portail de données", value = "portail de données", wikidata = {property = "P1325", displayformat = "weblink"}},
{type = "mixed", label = "[[Statut juridique|Statuts]]", value = "statuts", wikidata = {property = "P6378", displayformat = "weblink", text = "En ligne"}},
}
},
organisation.ids(),
generic.geoloc({default_zoom=4}),
}
}
local localdata = require "Module:Infobox/Localdata"
local organisation = require "Module:Infobox/Fonctions/Organisation"
local wd = require "Module:Wikidata"
local chartes = {
-- {titre charte, élément wikidata, couleur titre, couleur texte, pictogramme}
{'agence fédérale aux États-Unis', 'Q20857065', '#3c3b6e', '#FFF', 'musee'},
{'dicastère', 'Q1225300', '#FFE8BF', '#000', 'eveque'},
{'institut de recherche', 'Q31855', '#8089b7', '#FFF', 'universite'},
{'institution des Nations unies', 'Q15925165', '#4B92DB', '#FFF', 'nations-unies'},
{'institution européenne', 'Q4936585', '#003399', '#FFF', 'union-europeenne'},
{'organisme sans but lucratif', 'Q163740', '6e77ef', '#FFF', 'association'},
{'parti politique', 'Q7278', '#E1E1E1', '#000', 'defaut'},
{'société nationale de la Croix-Rouge', 'Q1968122', '#CC0000', '#FFF', 'medecine'},
{'société savante', 'Q955824', '#FFDEAD', '#000', 'universite'},
{'syndicat', 'Q681615', '#D20012', '#FFF', 'association'},
}
local function setformat()
local instanceof = wd.getIds(localdata.item, {property = 'P31'})
if not instanceof then
return {'Q', '', '#323996', '#FFF', 'defaut'}
end
instanceof = wd.addVals(instanceof, {property = 'P279'}, 2)
for i, j in pairs(instanceof) do
for k, l in pairs(chartes) do
if l[2] == j then
return l
end
end
end
return {'Q', '', '#323996', '#FFF', 'defaut'}
end
local function setcharte()
if localdata['charte'] then
charte = localdata['charte']
for i, j in pairs(chartes) do
if j[1] == charte then
return j
end
end
end
return setformat()
end
local infoboxformat = setcharte()
local defaultquery = {property = {'P101', 'P366', 'P361', 'P279'}}
return {
maincolor = infoboxformat[3],
secondcolor = infoboxformat[3],
thirdcolor = infoboxformat[4],
parts =
{
generic.title(infoboxformat[5]),
generic.logo('Article à illustrer Organisation'),
generic.blason(),
generic.flag(),
generic.locationmap(),
generic.mainimage('Article à illustrer Organisation'),
{type = 'table',
rows = {
{type = 'row', value = {'devise', 'slogan', 'association_slogan'}, wikidata = {property = 'P1451', showlang = true, isinlang = {'fr', 'en', 'la'}, conjtype = 'new line'}, style = { ['text-align'] = 'center', ['font-size'] = '0.9em', ['font-weight'] = 'normal', ['font-style'] = 'italic' }},
}
},
{type = 'table', title = localdata['histoire'] or wd.formatStatements{entity = id, property = 'P2184', withlink = 'frwiki'} or 'Histoire',
rows = {
{type = 'row', label = 'Fondation', value = {'création', 'fondation', 'date_de_fondation'}, wikidata = {property = {'P571', 'P740'}, showqualifiers = {'P518', 'P1810', 'P4649'}, conjtype = 'new line'}},
{type = 'row', label = 'Dissolution', value = 'dissolution', property = 'P576'},
{type = 'row', label = 'Origine', value = {'origine'}},
{type = 'row', label = 'Prédécesseur', plurallabel = 'Prédécesseurs', value = {'remplace', 'a remplacé', 'prédécesseur'}, wikidata = {property = {'P1365', 'P155', 'P1398'}, removedupes = true}},
{type = 'row', label = 'Successeur', plurallabel = 'Successeurs', value = {'remplacé par', 'successeur'}, wikidata = {property = {'P1366', 'P156', 'P167'}, removedupes = true}},
{type = 'row', label = 'Scission de', value = {'scission de'}},
{type = 'row', label = 'Fusion de', value = {'fusion de'}},
{type = 'row', label = 'Scission dans', value = {'scission dans'}},
{type = 'row', label = 'Fusionné dans', value = {'fusionné dans'}},
}
},
{type = 'table', title='Cadre',
rows = {
{type = 'row', label = 'Sigle', plurallabel = 'Sigles', value = {'surnom', 'sigle', 'acronyme'}, wikidata = {property = {'P1449', 'P1813'}, showlang = true, isinlang = {'fr', 'en'}}},
{type = 'row', label = 'Code', plurallabel = 'Code', value = 'code'},
{type = 'row', label = '[[Zone d\'activité]]', value = {'couverture', 'région', 'zone opérationnelle', 'zone d\'influence'}, wikidata = {property = 'P2541', speciallabels = {Q13780930 = '[[Fichier:Flag of the United Nations.svg|20px|Monde|class=noviewer thumbborder]] [[Monde (univers)|Monde entier]]', Q46 = '[[Fichier:Flag of Europe.svg|20px|Europe|class=noviewer thumbborder]] [[Europe]]'}}},
{type = 'row', label = 'Type', value = {'type', 'association_type'}, wikidata = {property = 'P31', removedupes = true, showqualifiers = {'P642', 'P459', 'P1013', 'P5102'}, qualifconjtype = 'comma', defaultlink = '-', defaultlinkquery = defaultquery}},
{type = 'row', label = '[[Forme juridique]]', value = 'forme juridique', wikidata = {property = 'P1454', showqualifiers = 'P4649', defaultlink = '-', defaultlinkquery = defaultquery, rank = 'valid', showdate = true, sorttype = 'chronological', conjtype = 'new line'}},
{type = 'row', label = 'Structure', value = 'structure'},
{type = 'row', label = '[[Objet social]]', plurallabel = '[[Objet social|Objets sociaux]]', value = {'objet social', 'objets sociaux'}, wikidata = {property = 'P6346'}},
{type = 'row', label = 'Domaine d\'activité', plurallabel = 'Domaines d\'activité', value = {'discipline', 'disciplines', 'domaine', 'domaines', 'secteur'}, wikidata = {property = {'P101', 'P452', 'P2650'}, defaultlink = '-', defaultlinkquery = defaultquery}},
{type = 'row', label = '[[Mouvement culturel|Mouvement]]', value = {'mouvement'}, wikidata = {property = 'P135'}},
{type = 'row', label = '[[Financement]]', value = 'financement', wikidata = {property = 'P2770', speciallabels = {Q193219 = '[[subvention]]s', Q1124860 = '[[dons]]'}, conjtype = "and"}},
{type = 'row', label = 'Objectif', plurallabel = 'Objectifs', value = {'but', 'objectif', 'objectifs'}, property = {'P3712'}},
{type = 'row', label = 'Méthode', plurallabel = 'Méthodes', value = {'méthode', 'methode'}},
{type = 'row', label = 'Campus', value = 'campus'},
{type = 'row', label = 'Siège social', value = {'siège', 'siège social', 'adresse', 'localisation', 'ville', 'siege'}, wikidata = {property = 'P159', defaultlink = '-', defaultlinkquery = {property = {'P669', 'P131', 'P466'}}, showqualifiers = {'P670', 'P969', 'P669', 'P281', 'P131', 'P17'}, qualifconjtype = 'comma', labelformat = function(id) local label = wd.getLabel(id) if mw.ustring.match(label, '%de') then return mw.ustring.gsub(label, '(%d)(e%l?)', '%1<sup>%2</sup>', 1) else return label end end}},
generic.country(),
generic.coordinates(),
{type = 'row', label = '[[Langue]]', plurallabel = '[[Langue]]s', value = {'langue', 'langues', 'langue officielle', 'langues officielles'}, wikidata = {property = 'P37', showqualifiers = 'P4626'}},
{type = 'row', label = '[[Langue de travail]]', plurallabel = '[[Langue de travail|Langues de travail]]', value = {'langue de travail', 'langues de travail'}, wikidata = {property = 'P2936', showqualifiers = 'P4626'}},
}
},
{type = 'table', title='Organisation',
rows = {
organisation.membres(id),
organisation.custom(),
-- Entités liées
{type = 'row', label = 'Organisation mère', plurallabel = 'Organisations mères', value = {'organisation mère', 'société mère', 'organisme'}, wikidata = {property = 'P749', showdate = true, sorttype = 'chronological', showqualifiers = {'P1001'}, conjtype = 'new line'}},
{type = 'row', label = 'Branche', plurallabel = 'Branches', value = 'branche', property = 'P199'},
{type = 'row', label = 'Partenaire', plurallabel = 'Partenaires', value = 'partenaire', property = 'P2652'},
{type = 'row', label = 'Dépend de', value = 'dépend de'},
{type = 'row', label = 'Affiliation', value = {'affiliation', 'affiliation_europeenne', 'affiliation_internationale', 'rattachement'}, wikidata = {property = {'P1416', 'P463'}, showdate = true, defaultlinkquery = {property = {'P749', 'P127', 'P112'}}, qualifdefaultlinkquery = defaultquery, showqualifiers = {'P2868', 'P1416', 'P3831'}}},
{type = 'row', label = 'Sponsor', plurallabel = 'Sponsors', hidden = true, value = 'sponsor', wikidata = {property = 'P859', defaultlinkquery = {property = {'P749', 'P127', 'P112'}}}},
-- Orientation politique
{type = 'row', label = '[[Idéologie]]', value = {'idéologie', 'orientation politique', 'politique', 'pol'}, wikidata = {property = 'P1142'}},
{type = 'row', label = '[[Échiquier politique|Positionnement]]', value = {'positionnement', 'positionnement politique'}, wikidata = {property = 'P1387'}},
{type = 'row', label = '[[Coalition politique]]', plurallabels = '[[Coalition politique|Coalitions politiques]]', value = {'coalition', 'coalition politique'}, wikidata = {property = 'P5832'}},
{type = 'row', label = '[[Groupe parlementaire]]', value = {'groupe parlementaire', 'parlement'}, wikidata = {property = 'P4100'}},
-- Situation financière
{type = 'row', label = 'Budget', value = 'budget', wikidata = {property = 'P2769', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Chiffre d\'affaires', value = 'chiffre d\'affaires', wikidata = {property = 'P2139', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Résultat net', value = 'résultat net', wikidata = {property = 'P2295', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Dépenses', value = {'dépenses', 'dépenses annuelles', 'dépenses totales'}, wikidata = {property = 'P2402', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Capitalisation boursière', value = 'capitalisation', wikidata = {property = 'P2226', showdate = true, sorttype = 'chronological', showunit = 'true'}},
{type = 'row', label = 'Cotation', plurallabel = 'Cotations', value = 'cotation', wikidata = {property = 'P414', showqualifiers = 'P249', conjtype = 'new line'}},
{type = 'row', label = 'Notation', value = 'notation'},
-- Divers
{type = 'row', label = 'Récompense', plurallabel = 'Récompenses', value = 'récompense', wikidata = {property = 'P166', showdate = true, sorttype = 'chronological', conjtype = 'new line', defaultlink = '-', defaultlinkquery = {property = 'P1027'}}},
{type = 'row', label = 'Produit', plurallabel = 'Produits', value = 'produit', property = 'P1056'},
{type = 'row', label = '[[Représentativité syndicale en France|Représentativité]]', value = {'representativite', 'représentativité'}},
{type = 'row', label = 'Publication', plurallabel = 'Publications', value = {'organe de presse', 'publication', 'publications'}, wikidata = {property = 'P2813', showdate = true, sorttype = 'chronological', conjtype = 'new line', defaultlink = '-', defaultlinkquery = {property = 'P123', 'P1433'}, labelformat = function(id) local label = wd.getLabel(id) if label then return '<i>' .. label .. '</i>' end end}},
generic.website(),
{type = "mixed", label = "Portail de données", value = "portail de données", wikidata = {property = "P1325", displayformat = "weblink"}},
{type = "mixed", label = "[[Statut juridique|Statuts]]", value = "statuts", wikidata = {property = "P6378", displayformat = "weblink", text = "En ligne"}},
}
},
organisation.ids(),
generic.geoloc({default_zoom=4}),
}
}