Modulo:Infobox/sandbox: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Moroboshi (discussione | contributi)
Nessun oggetto della modifica
m versione attuale
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
local origArgs -- argomenti passati originariamente al template (pre elaborazione)
local root -- radice del markup html
local dump = {}
Riga 13:
valore = '<div>\n' .. valore .. '\n</div>'
end
return valore .. '\n'
end
 
Riga 132:
 
local function renderRows()
local rownums = getArgNums('Obbligato', 'Valore', 'GruppoOpzionale', 'Gruppo')
for k, num in ipairs(rownums) do
local skip = false
Riga 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
Line 153 ⟶ 149:
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]
Line 207 ⟶ 203:
end
 
local function preprocessSingleArg(argName, argObbligato)
-- 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
-- precedente del template {{Infobox}}
if origArgs[argName] and origArgs[argName] ~= '' then
if origArgsargs[argName] ~= '' thenorigArgs[argName]
args[argName] = origArgs[argName]
elseif argObbligato and origArgs[argObbligato] then
args[argName] = origArgs[argObbligato]
end
end
end
Line 258 ⟶ 250:
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, (v.prefix=="Valore" and "Obbligato" .. tostring(i)))
end
-- Processa la tavola dei dipendenti se il parametro da cui dipendono esiste e non è nullo
Line 323 ⟶ 315:
preprocessSingleArg('CreaTable')
preprocessSingleArg('Summary')
-- if true then return mw.text.jsonEncode( args ) end
return _infobox()
end