Module:Navbox: Difference between revisions

m
1 revision imported
m (1 revision imported: Template for journal )
m (1 revision imported)
Line 10: Line 10:
local args
local args
local border
local border
local listnums
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
Line 85: Line 85:
args.name,
args.name,
mini = 1,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;box-shadow:none;padding:0;'
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
})
end
end
Line 116: Line 116:
titleCell
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
end


Line 192: Line 191:
row
row
:tag('td')
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass('navbox-image')
:addClass(args.imageclass)
:addClass(args.imageclass)
:css('width', '1px')               -- Minimize width
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:css('padding', '0 2px 0 0')
:cssText(args.imageleftstyle)
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:attr('rowspan', #listnums)
Line 237: Line 235:


if not args.groupwidth then
if not args.groupwidth then
listCell:css('width', '100%')
listCell:css('width', 'auto')
end
end


Line 261: Line 259:
:addClass('navbox-' .. oddEven)
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
Line 269: Line 266:
row
row
:tag('td')
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass('navbox-image')
:addClass(args.imageclass)
:addClass(args.imageclass)
:css('width', '1px')               -- Minimize width
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:css('padding', '0 0 0 2px')
:cssText(args.imagestyle)
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:attr('rowspan', #listnums)
Line 354: Line 350:
:addClass('nowraplinks')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))


if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
tbl
:addClass('mw-collapsible')
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
:addClass(args.state or 'autocollapse')
end
end
Line 388: Line 385:
function p._navbox(navboxArgs)
function p._navbox(navboxArgs)
args = navboxArgs
args = navboxArgs
listnums = {}


for k, _ in pairs(args) do
for k, _ in pairs(args) do
Line 430: Line 426:
:attr('role', 'navigation')
:attr('role', 'navigation')
:addClass('navbox')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.bodystyle)
:cssText(args.style)
:cssText(args.style)
Line 453: Line 448:
getArgs = require('Module:Arguments').getArgs
getArgs = require('Module:Arguments').getArgs
end
end
args = getArgs(frame, {wrappers = {'Template:Navbox'}})
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end


-- Read the arguments in the order they'll be output in, to make references number in the right order.
-- Read the arguments in the order they'll be output in, to make references number in the right order.