Module:Navbox: Difference between revisions
m comments |
add support for separate headers/footers |
||
Line 8: | Line 8: | ||
-- Add option for header cell width? (low priority) | -- Add option for header cell width? (low priority) | ||
-- Fix collapse options (high priority) | -- Fix collapse options (high priority) | ||
-- Header/footer row | |||
function p.navbox_header_footer(row_content) | |||
local row = '<td style="width:10em; padding:0em; background:white" colspan="2">\n' | |||
.. row_content | |||
.. '</td>\n' | |||
return row | |||
end | |||
-- Navbox row | -- Navbox row | ||
Line 68: | Line 77: | ||
local is_collapsed = yesno(args["Is Collapsed" ], false) | local is_collapsed = yesno(args["Is Collapsed" ], false) | ||
local navbox_type = ((args["Navbox Type"] == nil) and "Normal" or args["Navbox Type"]) | local navbox_type = ((args["Navbox Type"] == nil) and "Normal" or args["Navbox Type"]) | ||
local header_row = args["Header Row"] | |||
local footer_row = args["Footer Row"] | |||
-- Start of table | -- Start of table | ||
Line 79: | Line 90: | ||
.. p.navbox_title(title) | .. p.navbox_title(title) | ||
-- Add header | |||
if header_row ~= nil then | |||
navbox = navbox .. p.navbox_header_footer(header_row) | |||
end | |||
-- Add rows | |||
for i = 1, #rows do | for i = 1, #rows do | ||
navbox = navbox .. p.navbox_row(rows[i]) | navbox = navbox .. p.navbox_row(rows[i]) | ||
end | end | ||
-- Add footer | |||
if footer_row ~= nil then | |||
navbox = navbox .. p.navbox_header_footer(footer_row) | |||
end | |||
-- End of table | |||
navbox = navbox | navbox = navbox | ||
.. '</table>\n' | .. '</table>\n' | ||
Line 91: | Line 114: | ||
-- This navbox is meant to display subheaders. | -- This navbox is meant to display subheaders. | ||
navbox = '<table style="width:100%; border-spacing:0px">\n' | navbox = '<table style="width:100%; border-spacing:0px">\n' | ||
-- Add rows | |||
for i = 1, #rows do | for i = 1, #rows do | ||
navbox = navbox .. p.navbox_row(rows[i]) | navbox = navbox .. p.navbox_row(rows[i]) | ||
end | end | ||
-- End of table | |||
navbox = navbox .. '</table>' | navbox = navbox .. '</table>' | ||
else | else | ||
Line 104: | Line 129: | ||
.. p.navbox_title(title) | .. p.navbox_title(title) | ||
-- Add header | |||
if header_row ~= nil then | |||
navbox = navbox .. p.navbox_header_footer(header_row) | |||
end | |||
-- Add rows | |||
for i = 1, #rows do | for i = 1, #rows do | ||
navbox = navbox .. p.navbox_row(rows[i]) | navbox = navbox .. p.navbox_row(rows[i]) | ||
end | end | ||
-- Add header | |||
if footer_row ~= nil then | |||
navbox = navbox .. p.navbox_header_footer(footer_row) | |||
end | |||
-- End of table | |||
navbox = navbox | navbox = navbox | ||
.. '</table>\n' | .. '</table>\n' |