Modul:Quickbar
Dokumentationen för denna modul kan skapas på Modul:Quickbar/dok
local quickbar = {}
local function is_defined(s)
if s and s ~= '' then return s end
return nil
end
function quickbar.Quickbar_header ( frame )
if frame == mw.getCurrentFrame() then
args = frame:getParent().args
else
args = frame
end
if is_defined(args[1]) then
local output = mw.html.create('tr')
output
:tag('td')
:attr('colspan', is_defined(args['colspan']) or '2')
:addClass('qbHeader')
:wikitext(args[1] or '')
return tostring(output)
end
return nil
end
function quickbar.Quickbar_site ( frame )
-- Assumo la chiamata mediante #invoke, quindi usa gli argomenti passati al template invocante.
args = frame:getParent().args
if is_defined(args[1]) and is_defined(args[2]) then
return quickbar.Quickbar_header{'['..args[2]..' <small>'..args[1]..'</small>]'}
end
return nil
end
function quickbar.Quickbar_item ( frame )
args = frame:getParent().args
if is_defined(args[1]) and is_defined(args[2]) then
local output = mw.html.create('tr')
output
:tag('th')
:addClass('qbRowHeader')
:wikitext(args['heading'] or args[1] or '')
:done()
:tag('td')
:addClass('printNoLink qbRowValue')
:wikitext(args['value'] or args[2] or '')
return tostring(output)
end
return nil
end
function quickbar.Quickbar_image ( frame )
if frame == mw.getCurrentFrame() then
args = frame:getParent().args
else
args = frame
end
if args == nil then return nil end
local heading = mw.html.create('')
if is_defined(args['heading']) then
heading
:tag('div')
:addClass('qbHeader')
:wikitext(args['heading'])
:done()
end
local output = mw.html.create('tr')
output
:tag('td')
:attr('colspan', is_defined(args['colspan']) or '2')
:addClass('qbImageCell')
:node(heading)
:tag('div')
:addClass('qbImage')
:wikitext(args['image'] or '')
return tostring(output)
end
function quickbar.coa_and_flag ( frame )
local Wikibase = require('Module:Wikibase')
local stemma = Wikibase.vapen()
local stemma_titolo = Wikibase.vapen_titel()
local wikistemma = '[[File:'..stemma..'|70x70px|center|'..stemma_titolo..']]'
local bandiera = Wikibase.flagga()
local bandiera_titolo = Wikibase.flagga_titel()
local wikibandiera = '[[File:'..bandiera..'|70x70px|center|border|'..bandiera_titolo..']]'
--Mostra stemma e bandiera affiancate quando entrambe presenti, o il solo stemma se la bandiera è mancante
if is_defined(stemma) then
if is_defined(bandiera) then
return quickbar.Quickbar_image{
heading='Vapen & Flagga',
image='<table width="100%"><tr><td witdh="50%">'..wikistemma..'</td><td witdh="50%">'..wikibandiera..'</td></tr></table>'
}
else
return quickbar.Quickbar_image{
heading='Vapen',
image=wikistemma
}
end
--Mostra la sola bandiera quando lo stemma è mancante
elseif is_defined(bandiera) then
return quickbar.Quickbar_image{
heading='Flagga',
image=wikibandiera
}
end
return nil
end
return quickbar