« Module:Bandeau » : différence entre les versions

De Le Wiki de Lug
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 32 : Ligne 32 :


function structureHtml(balise, class, style, contenu)
function structureHtml(balise, class, style, contenu)
tab.insert('<' .. balise .. ' ')
tab.insert('<')
  .insert(balise)
 
if class and style then
if class and style then
  tab.insert(class)
  tab.insert(' ')
      .insert(class)
      .insert(' ')
      .insert(' ')
      .insert(style)
      .insert(style)
else
else
tab.insert(class or style)
tab.insert(' ')
  .insert(class or style)
end
end
tab.insert('>')
tab.insert('>')
  .insert(contenu)
  .insert(contenu)
Ligne 45 : Ligne 50 :


function structureHtmlFin(balise)
function structureHtmlFin(balise)
tab.insert('</')
tab.minsert('</', balise, '>')
  .insert(balise)
  .insert('>')
end
end


return p
return p

Version du 9 février 2014 à 22:15

La documentation pour ce module peut être créée à Module:Bandeau/doc

--Ce module implémente le modèle {{Bandeau}}.
 
local p = {}

p.classStructureBoite = 'class="bandeau-simple plainlinks"'
p.styleStructureBoite = 'style="width:80%; margin:0 auto 1em; padding:0.5em; background:#f9f9f9; border-color:#aaa;"'
p.styleStructureImage = 'style="display:table-cell; vertical-align:middle; width:50px;"'
p.styleStructureTexte = 'style="display:table-cell; vertical-align:middle;"'

local TableBuilder = require('Module:TableBuilder')

function p.bandeau(frame)
	args = frame:getParent().args
	tab = TableBuilder.new()

	structureHtml('div', p.classStructureBoite, p.styleStructureBoite)
	structureHtml('div', nil, p.styleStructureImage, args.image)
	structureHtmlFin('div')
	structureHtml('p', nil, p.styleStructureTexte, args.texte)
	structureHtmlFin('p')
	structureHtmlFin('div')
	structureHtmlFin('div')

    --Code HTML brut
    if args.raw then
    	res = frame:preprocess('<nowiki>') .. tab.concat() .. frame:preprocess('</nowiki>') .. '\n:Éxecution : ' .. os.clock() .. 's'
        return res
	else
		return tab.concat()
	end
end

function structureHtml(balise, class, style, contenu)
	tab.insert('<')
	   .insert(balise)

	if class and style then
	   tab.insert(' ')
	      .insert(class)
	      .insert(' ')
	      .insert(style)
	else
		tab.insert(' ')
		   .insert(class or style)
	end

		tab.insert('>')
		   .insert(contenu)
end

function structureHtmlFin(balise)
	tab.minsert('</', balise, '>')
end

return p