Content deleted Content added
revert to working version 1055449661 |
add navbox styles only when it's not a subgroup |
||
Line 68:
end
return item
end
-- we will want this later when we want to add tstyles for hlist/plainlist
local function has_navbar()
and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain
and (
args[cfg.arg.name]
~= cfg.pattern.navbox
)
end
local function renderNavBar(titleCell)
if has_navbar() then
▲ if args[cfg.arg.navbar] ~= cfg.keyword.navbar_off and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain and not
▲ (not args[cfg.arg.name] and mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, '') == cfg.pattern.navbox) then
titleCell:wikitext(navbar{
args[cfg.arg.name],
Line 273 ⟶ 283:
end
-- TODO: This should be finding the relevant classes, *not* checking equality
-- to be improved when we go looking for hlist and plainlist
return not (cfg.list_classes[args[cfg.arg.listclass]] or cfg.list_classes[args[cfg.arg.bodyclass]])
end
Line 368 ⟶ 379:
return tbl
end
local function add_navbox_styles()
local frame = mw.getCurrentFrame()
local function add_user_styles(templatestyles)
if templatestyles and templatestyles ~= '' then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
end
return ''
end
-- get templatestyles
local base_templatestyles = frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
}
local templatestyles = add_user_styles(args[cfg.arg.templatestyles])
local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])
-- The 'navbox-styles' div exists for two reasons:
-- 1. To wrap the styles to work around T200206 more elegantly. Instead
-- of combinatorial rules, this ends up being linear number of CSS rules.
-- 2. To allow MobileFrontend to rip the styles out with 'nomobile' such that
-- they are not dumped into the mobile view.
return mw.html.create('div')
:addClass(cfg.class.navbox_styles)
:addClass(cfg.class.nomobile)
:wikitext(base_templatestyles .. templatestyles .. child_templatestyles)
:done()
end
Line 390 ⟶ 431:
local tbl = renderMainTable(border, listnums)
-- render the appropriate wrapper around the navbox, depending on the border param▼
local res = mw.html.create()
▲ -- render the appropriate wrapper around the navbox, depending on the border param
if border == cfg.keyword.border_none then
res:node(add_navbox_styles())
local nav = res:tag('div')
:attr('role', 'navigation')
Line 411 ⟶ 454:
:wikitext('<div>')
else
res:node(add_navbox_styles())
local nav = res:tag('div')
:attr('role', 'navigation')
|