Modulo:Infobox/sandbox: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m non va bene, l'andata a capo genera un paragrafo se il parametro è compilato con testo + elenco
Moroboshi (discussione | contributi)
test obbligato
Riga 2:
local p = {} -- per l'esportazione delle funzioni del modulo
 
local args = {} -- variabile che contiene gli argomenti passati al template (post elaborazione)
local origArgs -- argomenti passati originariamente al template (pre elaborazione)
local origArgs
local root -- radice del markup html
local dump = {}
Riga 60:
else
dataCell = row:tag('td')
:addClass('sinottico_testo_centrale')
:attr('colspan', 2)
:css('text-align', 'center')
end
dataCell
Riga 94:
:tag('caption')
:addClass('sinottico_testata')
:css("font-weight", "bold")
:cssText(args.StileTitoloEst or '')
:node(suptitle)
Riga 116 ⟶ 115:
local cell_immagine = mw.html.create('td')
cell_immagine
:addClass('sinottico_testo_centrale ' .. (args.ClasseImmagine or ''))
:attr('colspan', '2')
:css('text-align', 'center')
:cssText(args.StileImmagine or '')
:wikitext(args.Immagine)
Riga 134 ⟶ 132:
 
local function renderRows()
local rownums = getArgNums('Obbligato', 'Valore', 'GruppoOpzionale', 'Gruppo')
for k, num in ipairs(rownums) do
local skip = false
Riga 142 ⟶ 140:
if args['Gruppo' .. rownums[j]] ~= nil or args['GruppoOpzionale' .. rownums[j]]~=nil then break end
if args['Valore' .. rownums[j]] ~= nil then
skip = false
break
end
if args['Obbligato' .. rownums[j]] then
skip = false
break
Riga 151 ⟶ 153:
gruppo = args['GruppoOpzionale' .. num] or args['Gruppo' .. num],
nome = args['Nome' .. num],
valore = args['Valore' .. num] or args['Obbligato' .. num],
classe = args['Classe' .. num],
stile = args['GruppoStile' .. num]
Riga 176 ⟶ 178:
:tag('tr')
:tag('td')
:addClass('sinottico_piede2 noprint nomobile metadata')
:attr('colspan', '2')
:wikitext(mw.getCurrentFrame():expandTemplate({
Riga 205 ⟶ 207:
end
 
local function preprocessSingleArg(argName, obbligato)
-- Se l'argomento esiste e non è una stringa vuota lo aggiunge alla tabella degli argomenti
-- Argomenti uguali a stringa vuota sono trattati come nulli come da comportamento
Riga 211 ⟶ 213:
if origArgs[argName] and origArgs[argName] ~= '' then
args[argName] = origArgs[argName]
elseif obbligato then
args[argName] = ''
end
end
Riga 252 ⟶ 256:
for j,v in ipairs(prefixTable) do
local prefixArgName = v.prefix .. tostring(i)
if origArgs[prefixArgName] then
moreArgumentsExist = true -- Aggiunge una passata se un parametro è stato trovato, anche se nullo.
preprocessSingleArg(prefixArgName)
Riga 260 ⟶ 264:
for j,dependValue in ipairs(v.depend) do
local dependArgName = dependValue .. tostring(i)
preprocessSingleArg(dependArgName, (dependValue == 'Obbligato'))
end
end
Riga 309 ⟶ 313:
{prefix = 'Gruppo', depend={'GruppoStile'}},
{prefix = 'GruppoOpzionale', depend={'GruppoStile'}},
{prefix = 'Valore', depend={'Nome', 'Classe', 'Obbligato'}},
}, 50)
preprocessSingleArg('Ultima')