« Module:Charte » : différence entre les versions
Apparence
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 21 : | Ligne 21 : | ||
soustitre = "#000000a3", | soustitre = "#000000a3", | ||
hr = "#000000a3", | hr = "#000000a3", | ||
color = "#ffffff" -- texte blanc sur fond noir | |||
}, | }, | ||
defaut = { | defaut = { | ||
| Ligne 40 : | Ligne 40 : | ||
local type = args["type"] or "titre" | local type = args["type"] or "titre" | ||
-- Cas spécial : couleur du texte | |||
if type == "texte" then | |||
if chartes[charte] and chartes[charte].color then | |||
return chartes[charte].color | |||
else | |||
return "#000000" -- noir par défaut | |||
end | |||
end | |||
-- Cas où la couleur est fournie directement | |||
if isHexCode(charte) then | if isHexCode(charte) then | ||
return charte | return charte | ||
elseif chartes[charte] and chartes[charte][type] then | elseif chartes[charte] and chartes[charte][type] then | ||
return chartes[charte][type] | return chartes[charte][type] | ||
Version du 27 mai 2025 à 19:26
La documentation pour ce module peut être créée à Module:Charte/doc
local p = {}
local chartes = {
biographie = {
titre = "#6eacdc9c",
soustitre = "#a9c8e09c",
hr = "#6eacdc9c",
},
empire = {
titre = "#993333b0",
soustitre = "#831f1fc7",
hr = "#993333b0",
},
geographie = {
titre = "#209a57d9",
soustitre = "#209a57a8",
hr = "#209a57d9",
},
darkgods = {
titre = "#000000cc",
soustitre = "#000000a3",
hr = "#000000a3",
color = "#ffffff" -- texte blanc sur fond noir
},
defaut = {
titre = "#eaecf0",
soustitre = "#a2a9b1",
hr = "#eaecf0",
}
}
-- Fonction pour vérifier si la valeur est un code HEX (#rrggbb ou #rrggbbaa)
local function isHexCode(value)
return type(value) == "string" and mw.ustring.match(value, "^#%x%x%x%x%x%x%x?$") ~= nil
end
function p.couleur(frame)
local args = frame.args
local charte = args["charte"] or "defaut"
local type = args["type"] or "titre"
-- Cas spécial : couleur du texte
if type == "texte" then
if chartes[charte] and chartes[charte].color then
return chartes[charte].color
else
return "#000000" -- noir par défaut
end
end
-- Cas où la couleur est fournie directement
if isHexCode(charte) then
return charte
elseif chartes[charte] and chartes[charte][type] then
return chartes[charte][type]
else
return chartes["defaut"][type] or "#dddddd"
end
end
return p