Modulo:Navbox: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
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 |
navbar obbligatorio, v. Discussioni_template:Navbox#Barra_navigazione_Template. è disabilitato senza valido motivo in oltre 700 template, mentre gli usi in portali/progetti sono 7 e risolvibili in altri modi |
||
(4 versioni intermedie di un altro utente non mostrate) | |||
Riga 3:
]]--
require('
local getArgs = require('Modulo:Arguments').getArgs
Riga 48:
-- Con il debug ridefinisce il metodo mw.html:css,
-- permettendo di eseguire i test senza controllare anche
--
-- @param {table} tableNode
Riga 65:
-- Carica il CSS via TemplateStyles quando opportuno
local function loadCSS(name)
local styles = 'Modulo:Navbox/' .. prefix .. 'styles.css'
else▼
end
Line 89 ⟶ 86:
local self = {}
local thNode
setmetatable(self, { __index = Navbox })
Line 108 ⟶ 99:
:tag('th')
:attr('colspan', self.args.image and '3' or '2')
:cssText(self.args.titlestyle)
▲ self:_addTnavbar(thNode)
if self.args.title then
self:_addTitle(thNode)
Line 139 ⟶ 127:
-- Configura gli stili CSS della tabella
function Navbox:_setupTableNode()
self.tableNode
:addClass(isTemplatePage(self.args.name) and 'navbox_mobile' or 'navbox')
Line 153 ⟶ 134:
self.args.state == 'autocollapse' and 'autocollapse' or
not self.args.state and 'autocollapse' or nil)
:addClass('
:addClass('noprint')▼
:addClass('metadata')▼
:attr('id', 'navbox-' .. (self.args.name or ''))
:cssText(self.args.style)
:cssText(self.args.bodystyle)
Line 166 ⟶ 144:
-- @param {table} node
function Navbox:_addTnavbar(node)
local tnavbar = mw.getCurrentFrame():expandTemplate {
title = 'Tnavbar',
Line 180 ⟶ 151:
}
}
node:tag('div'):
end
Line 187 ⟶ 158:
-- @param {table} node
function Navbox:_addTitle(node)
node:tag('span'):
end
Line 195 ⟶ 166:
-- @param {string} argStyle
function Navbox:_addAboveOrBelow(arg, argStyle)
self.tableNode
:tag('tr')
:tag('
:attr('colspan', self.args.image and '3' or '2')
:
:cssText(argStyle)
:wikitext(arg)
Line 214 ⟶ 180:
-- @param {number} rowspan
function Navbox:_addImage(trNode, rowspan)
trNode
:tag('td')
:attr('rowspan', rowspan)
:
:cssText(self.args.imagestyle)
:wikitext(self.args.image)
Line 230 ⟶ 191:
function Navbox:_addLists()
local rowIds, altStyle, altBackground
-- crea una riga per ogni groupN/listN
rowIds = getIds(self.args, true)
▲ for _, id in ipairs(rowIds) do
local trNode = self.tableNode:tag('tr')
-- groupN
Line 245 ⟶ 199:
trNode:tag('th')
:attr('colspan', self.args['list' .. id] and '1' or '2')
:
:cssText(self.args.groupstyle)
:cssText(self.args['group' .. id .. 'style'])
Line 253 ⟶ 207:
if self.args['list' .. id] then
local list = trimSep(self.args['list' .. id])
if
altStyle = self.args.oddstyle▼
altBackground = nil▼
altStyle = self.args.evenstyle
altBackground = '
▲ altStyle = self.args.oddstyle
end
trNode:tag('td')
:attr('colspan', self.args['group' .. id] and '1' or '2')
:
▲ :css('text-align', self.args['group' .. id] and 'left' or 'center')
:cssText(self.args.liststyle)
:cssText(altStyle)
Line 314 ⟶ 265:
-- Configura gli stili CSS della tabella.
function NavboxSubgroup:_setupTableNode()
self.tableNode
▲ :addClass(isTemplatePage(self.args.name) and 'navbox_mobile' or 'navbox')
:cssText(self.args.bodystyle)
end
Line 332 ⟶ 273:
function NavboxSubgroup:_addLists()
local listIds, altStyle
-- crea una row per ogni listN
listIds = getIds(self.args)
Line 344 ⟶ 281:
if self.args['group' .. id] then
trNode:tag('th')
:
:cssText(self.args.groupstyle)
:wikitext(self.args['group' .. id])
Line 355 ⟶ 292:
trNode:tag('td')
:attr('colspan', self.args['group' .. id] and '1' or '2')
:
:cssText(self.args.liststyle)
:cssText(altStyle)
Line 375 ⟶ 312:
-- Funzione per l'utilizzo da un altro modulo.
function p._navbox_subgroup(args)
return
end
|