« Module:Fonctions » : différence entre les versions
Apparence
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 1 : | Ligne 1 : | ||
function p.multipleSuccession(frame) | function p.multipleSuccession(frame) | ||
local html = mw.html.create() | |||
local args = frame.args | local args = frame.args | ||
for i = 1, | for i = 1, 10 do | ||
local titre = args["Titre"..i] | local titre = args["Titre" .. i] | ||
local mandat = args["Mandat"..i] | local mandat = args["Mandat" .. i] | ||
local | local predecesseur = args["Prédécesseur" .. i] | ||
local | local successeur = args["Successeur" .. i] | ||
local | local charte = args["Charte" .. i] or "defaut" | ||
-- Afficher seulement si au moins un champ est rempli | |||
if titre or mandat or predecesseur or successeur then | |||
local container = html:tag("div") | |||
:css("margin", "0.5em 0") | |||
:css("overflow", "hidden") | |||
:css("font-size", "90%") | |||
local titreDiv = container:tag("div") | |||
:css("background-color", 'transparent') | |||
local | :css("text-align", "center") | ||
:css("padding", "0.5em") | |||
:css("font-weight", "bold") | |||
:wikitext(titre or "") | |||
if mandat then | |||
if mandat | titreDiv:tag("div") | ||
:css("font-weight", "normal") | |||
:css("font-size", "90%") | |||
:wikitext(mandat) | |||
end | end | ||
local | local succession = container:tag("div") | ||
:css("display", "flex") | |||
:css("justify-content", "space-between") | |||
:css("align-items", "center") | |||
:css("padding", "0.5em") | |||
succession:tag("div") | |||
:css("text-align", "left") | |||
:css("flex", "1") | |||
:wikitext(predecesseur and ("← [[" .. predecesseur .. "]]") or "") | |||
succession:tag("div") | |||
:css("flex", "0 0 auto") | |||
:css("padding", "0 1em") | |||
:wikitext("·") | |||
succession:tag("div") | |||
:css("text-align", "right") | |||
:css("flex", "1") | |||
:wikitext(successeur and ("[[" .. successeur .. "]] →") or "") | |||
container:tag("hr") | |||
:css("background-color", "#ccc") | |||
end | end | ||
end | end | ||
return | return tostring(html) | ||
end | end | ||
Version du 1 juin 2025 à 07:41
La documentation pour ce module peut être créée à Module:Fonctions/doc
function p.multipleSuccession(frame)
local html = mw.html.create()
local args = frame.args
for i = 1, 10 do
local titre = args["Titre" .. i]
local mandat = args["Mandat" .. i]
local predecesseur = args["Prédécesseur" .. i]
local successeur = args["Successeur" .. i]
local charte = args["Charte" .. i] or "defaut"
-- Afficher seulement si au moins un champ est rempli
if titre or mandat or predecesseur or successeur then
local container = html:tag("div")
:css("margin", "0.5em 0")
:css("overflow", "hidden")
:css("font-size", "90%")
local titreDiv = container:tag("div")
:css("background-color", 'transparent')
:css("text-align", "center")
:css("padding", "0.5em")
:css("font-weight", "bold")
:wikitext(titre or "")
if mandat then
titreDiv:tag("div")
:css("font-weight", "normal")
:css("font-size", "90%")
:wikitext(mandat)
end
local succession = container:tag("div")
:css("display", "flex")
:css("justify-content", "space-between")
:css("align-items", "center")
:css("padding", "0.5em")
succession:tag("div")
:css("text-align", "left")
:css("flex", "1")
:wikitext(predecesseur and ("← [[" .. predecesseur .. "]]") or "")
succession:tag("div")
:css("flex", "0 0 auto")
:css("padding", "0 1em")
:wikitext("·")
succession:tag("div")
:css("text-align", "right")
:css("flex", "1")
:wikitext(successeur and ("[[" .. successeur .. "]] →") or "")
container:tag("hr")
:css("background-color", "#ccc")
end
end
return tostring(html)
end