Module:Bandeau/doc
Ceci est la page de documentation pour Module:Bandeau
Ceci est la page de documentation pour le module suivant : Module:Bandeau Par chat GPT :
-- Ce module implémente les modèles de bandeau.
-- Standardisation des bandeaux (). -- Créer une fonction exportable pour le modèle Pages liés :
Module:Bandeau Module:Bandeau/doc (ns:all). -- Créer une fonction exportable pour les bandeaux d'article (ns:0). -- Créer une fonction exportable pour les bandeaux de section (ns:0). -- Créer une fonction exportable pour les bandeaux d'ébauche (ns:0). -- Créer une fonction exportable pour les bandeaux de discussion (ns:1). -- Créer une fonction exportable pour les bandeaux système (ns:8). -- Gérer les images multiples.
local p = {}
local trim = require('Module:Outils').trim local yesno = require('Module:yesno') local classData = mw.loadData('Module:Bandeau/Class') local moduleEbauche = 'Module:Bandeau/Ébauche' -- local paramEbauche = mw.loadData(moduleEbauche) -- ne sera chargé que pour un bandeau d'ébauche.
-- Configuration du module
local cfg = {
forme = 'bandeau-simple',
niveau = 'bandeau-niveau-neutre',
formatLien = '%s',
tailleIcone = '45x45',
erreurArgument = 'Paramètre |%s=
manquant',
erreurEbaucheParam = 'le thème « %s » du modèle [[Modèle:Ébauche|Pages liés :
Module:Bandeau/doc]] n’est pas défini.', erreurEbaucheType = 'le thème « %s » doit apparaître en tête de liste du modèle [[Modèle:Ébauche|Pages liés :
Module:Bandeau/doc]].', ebaucheImage = '%s', ebaucheTitre = '%s est une ébauche.', ebaucheTitreSujet = '%s est une ébauche concernant %s.', ebaucheCateg = , }
-- CSS inline pour éviter FOUC sur le site mobile local rustineFoucMobile = { ['display'] = 'table-cell', ['padding-right'] = '0.5em', }
-- Fonction utilitaire pour générer un message d'erreur avec un format spécifié local function erreur(texte, formatstring, tag) local res = mw.html.create(tag or 'span') res :addClass('error') :wikitext('Erreur : ')
if formatstring then res:wikitext(formatstring:format(texte)) else res:wikitext(texte) end
return tostring(res) end
-- Fonction principale pour générer un bandeau function p._bandeau(args) local res = mw.html.create('div') local cells = mw.html.create() local icone = trim(args.image) or trim(args['icône']) local backgroundIcone = icone and classData.icones[icone:gsub('_', ' ')] or false local texte = (trim(args.texte) or erreur('texte', cfg.erreurArgument))
-- Vérification si un identifiant est spécifié if args.id and args.id ~= then res:attr('id', args.id) end
-- Ajout des classes CSS au conteneur du bandeau res :addClass('bandeau-container') :addClass(classData.formes[args.forme] or cfg.forme) :addClass(classData.niveau[args.niveau] or cfg.niveau) :addClass('plainlinks') :addClass(args.class) :cssText(args.style)
-- Vérification de la nécessité de centrer le bandeau if yesno(args.centrer) then cells = mw.html.create('div') :addClass('bandeau-centrer') elseif trim(args.droite) then cells = mw.html.create('div') :css{ display = 'table', width = '100%' } end
-- Vérification du paramètre 'icône bma' if args['icône bma