Module:NavboxMobile: Difference between revisions
EnWikiAdmin (talk | contribs) No edit summary |
EnWikiAdmin (talk | contribs) No edit summary |
||
Line 285: | Line 285: | ||
end | end | ||
local function renderListRow(tbl, path, parentLevel) | local function renderListRow(tbl, path, parentLevel) | ||
path = path or "" | path = path or "" | ||
Line 295: | Line 294: | ||
if args[groupKey] then | if args[groupKey] then | ||
-- | -- Render the group (heading) | ||
local groupRow = addTableRow(tbl) | local groupRow = addTableRow(tbl) | ||
local groupCell = groupRow:tag('th') | local groupCell = groupRow:tag('th') | ||
:attr('scope', 'row') | :attr('scope', 'row') | ||
:addClass('navboxMobile-group-content') | :addClass('navboxMobile-group-content') | ||
:addClass('navboxMobile-group-level' .. parentLevel) -- | :addClass('navboxMobile-group-level' .. parentLevel) -- Correct level | ||
:attr('data-level', parentLevel) -- Optional attribute for CSS targeting | :attr('data-level', parentLevel) -- Optional attribute for CSS targeting | ||
:wikitext(processItem(args[groupKey])) | :wikitext(processItem(args[groupKey])) | ||
-- Render the list (content) | |||
if args[listKey] then | if args[listKey] then | ||
local listRow = addTableRow(tbl) | local listRow = addTableRow(tbl) | ||
local listCell = listRow:tag('td') | local listCell = listRow:tag('td') | ||
:attr('colspan', 2) | :attr('colspan', 2) | ||
:addClass('navboxMobile-list-content') | :addClass('navboxMobile-list-content') -- Base content class | ||
:addClass('navboxMobile-list-level' .. parentLevel) -- | :addClass('navboxMobile-list-level' .. parentLevel) -- Correct level | ||
:addClass((i % 2 == 1) and 'navboxMobile-odd' or 'navboxMobile-even') | :addClass((i % 2 == 1) and 'navboxMobile-odd' or 'navboxMobile-even') -- Odd/even class | ||
if args[listKey] == 'child' then | if args[listKey] == 'child' then | ||
-- Recursively render child lists | |||
local newPath = (path ~= "" and path .. "_" or "") .. i | local newPath = (path ~= "" and path .. "_" or "") .. i | ||
renderListRow(tbl, tostring(newPath), parentLevel + 1) | renderListRow(tbl, tostring(newPath), parentLevel + 1) | ||
else | else | ||
listCell | -- Render flat lists | ||
listCell:wikitext(processItem(args[listKey], args.nowrapitems)) | |||
end | end | ||
end | end | ||
Line 331: | Line 324: | ||
end | end | ||
end | end | ||