« Module:Bandeau » : différence entre les versions
Aller à la navigation
Aller à la recherche
Modèle>Hlm Z. Aucun résumé des modifications |
Modèle>Hlm Z. Aucun résumé des modifications |
||
| Ligne 6 : | Ligne 6 : | ||
p.classStructureBoite = 'bandeau-simple plainlinks' | p.classStructureBoite = 'bandeau-simple plainlinks' | ||
p.styleStructureBoite = ' | p.styleStructureBoite = 'background:#f9f9f9;' | ||
p.styleStructureImage = 'display:table-cell; vertical-align:middle; width:50px;' | p.styleStructureImage = 'display:table-cell; vertical-align:middle; width:50px;' | ||
p.styleStructureTexte = 'display:table-cell; vertical-align:middle;' | p.styleStructureTexte = 'display:table-cell; vertical-align:middle;' | ||
| Ligne 25 : | Ligne 25 : | ||
function p._bandeau() | function p._bandeau() | ||
--Construction HTML du bandeau | --Construction HTML du bandeau | ||
structureHtml('div', | structureHtml('div', arg(class) or p.classStructureBoite) | ||
if | if argument(image) then | ||
structureHtml('div', 'test-bandeau-image', nil, args.image) | structureHtml('div', 'test-bandeau-image', nil, args.image) | ||
structureHtmlFin('div') | structureHtmlFin('div') | ||
| Ligne 35 : | Ligne 35 : | ||
return tab.concat() | return tab.concat() | ||
end | |||
function argument(parametre) | |||
--Test de paramètre vide interprété par Lua | |||
if args[parametre] == '' then return nil end | |||
return args[parametre] | |||
end | |||
function erreur(texte) | |||
return '<span class="error">Erreur : ' .. texte .. '</span>' | |||
end | end | ||
Version du 15 février 2014 à 22:32
La documentation pour ce module peut être créée à Module:Bandeau/doc
--Ce module implémente le modèle {{Bandeau}}.
local p = {}
local TableBuilder = require('Module:TableBuilder')
p.classStructureBoite = 'bandeau-simple plainlinks'
p.styleStructureBoite = 'background:#f9f9f9;'
p.styleStructureImage = 'display:table-cell; vertical-align:middle; width:50px;'
p.styleStructureTexte = 'display:table-cell; vertical-align:middle;'
function p.bandeau(frame)
args = frame:getParent().args
tab = TableBuilder.new()
--Code HTML brut
if args.raw then
res = frame:preprocess('<nowiki>' .. p._bandeau() .. '</nowiki>') .. '\n:Éxecution : ' .. os.clock() .. 's'
return res
else
return p._bandeau()
end
end
function p._bandeau()
--Construction HTML du bandeau
structureHtml('div', arg(class) or p.classStructureBoite)
if argument(image) then
structureHtml('div', 'test-bandeau-image', nil, args.image)
structureHtmlFin('div')
end
structureHtml('p', 'test-bandeau-texte', nil, args.texte)
structureHtmlFin('p')
structureHtmlFin('div')
return tab.concat()
end
function argument(parametre)
--Test de paramètre vide interprété par Lua
if args[parametre] == '' then return nil end
return args[parametre]
end
function erreur(texte)
return '<span class="error">Erreur : ' .. texte .. '</span>'
end
function structureHtml(balise, class, style, contenu)
tab.insert('<')
.insert(balise)
if class then
tab.insert(' class="')
.insert(class)
.insert('"')
end
if style then
tab.insert(' style="')
.insert(style)
.insert('"')
end
tab.insert('>')
.insert(contenu)
end
function structureHtmlFin(balise)
tab.minsert('</', balise, '>')
end
return p