Modulo:Navbox: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
aggiornato stile documentazione a quello usato in Mediawiki per Lua, utilizzo di Modulo:Controllo parametri sconosciuti, successivo a questo modulo
navbox sempre visibili (per mobile) e aperti nella loro pagina di descrizione + colore delle righe pari e dispari stabilito in base all'iterazione (vedi discussione); id automatico per TemplateStyles
Riga 54:
local mt = getmetatable(tableNode)
mt.__index.css = function(t, name, val) return t end
end
 
-- Verifica se il template è elaborato nella sua pagina
local function isTemplatePage(name)
local title = mw.title.getCurrentTitle().prefixedText
name = 'Template:' .. (name or '')
return name == title and true or false
end
 
-- Carica il CSS via TemplateStyles quando opportuno
local function loadCSS(name)
local styles = 'Modulo:Navbox/styles.css'
if isTemplatePage(name) then
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles',
args = {src = styles}
else}
else
return ''
end
end
 
Line 127 ⟶ 147:
}
self.tableNode
:addClass(isTemplatePage(self.args.name) and 'navbox_mobile' or 'navbox')
:addClass('mw-collapsible')
:addClass(isTemplatePage(self.args.state == 'collapsed'name) and 'mw-collapsedautocollapse' or
(self.args.state == 'autocollapsecollapsed' and 'autocollapsemw-collapsed' or
(not self.args.state == 'autocollapse' and 'autocollapse' or nil)))
not self.args.state and 'autocollapse' or nil)
:addClass('nowraplinks')
:addClass('noprint')
:addClass('metadata')
:attr('id', 'navbox-' .. (self.args.name or ''))
:css(tableStyle)
:cssText(self.args.style)
Line 216 ⟶ 238:
-- crea una riga per ogni groupN/listN
rowIds = getIds(self.args, true)
local rowType = 'odd'
for _, id in ipairs(rowIds) do
local trNode = self.tableNode:tag('tr')
Line 230 ⟶ 253:
if self.args['list' .. id] then
local list = trimSep(self.args['list' .. id])
if (id % 2)rowType == 0'odd' then
altStyle = self.args.evenstyle
altBackground = '#f7f7f7'
else
altStyle = self.args.oddstyle
altBackground = nil
rowType = 'even'
else
altStyle = self.args.evenstyle
altBackground = '#f7f7f7'
rowType = 'odd'
end
trNode:tag('td')
Line 298 ⟶ 323:
}
self.tableNode
:addClass(isTemplatePage(self.args.name) and 'navbox_mobile' or 'navbox')
:addClass('nowraplinks')
:css(tableStyle)
Line 345 ⟶ 370:
-- Funzione per l'utilizzo da un altro modulo.
function p._navbox(args)
return loadCSS(args.name) .. Navbox:new(args):getHTML()
end
 
-- Funzione per l'utilizzo da un altro modulo.
function p._navbox_subgroup(args)
return loadCSS(args.name) .. NavboxSubgroup:new(args):getHTML()
end