4,683
edits
m (Allow for a custom header title) |
(Allow for multiple headers with custom header names) |
||
Line 39: | Line 39: | ||
function p.main(frame) | function p.main(frame) | ||
local args = frame:getParent().args | local args = frame:getParent().args | ||
-- Dynamic colspan and N/A generation value | -- Dynamic colspan and N/A generation value | ||
local greatest_row_size = 0 | local greatest_row_size = 0 | ||
Line 116: | Line 116: | ||
local check = args[v.name .. i] | local check = args[v.name .. i] | ||
if check and Params.has_content(check) then | if check and Params.has_content(check) then | ||
grs = grs + 1 | grs = grs + 1 | ||
end | end | ||
end | end | ||
Line 139: | Line 139: | ||
if args.noheader == nil then | if args.noheader == nil then | ||
local itemHeader = nil | local itemHeader = nil | ||
if args. | local colsize = args.header2 ~= nil and 1 or greatest_row_size | ||
itemHeader = args. | if args.header1 ~= nil then | ||
itemHeader = args.header1 | |||
else | else | ||
itemHeader = (greatest_row_size > 1 and 'Item (most effective → least effective)') or 'Item' | itemHeader = (greatest_row_size > 1 and 'Item (most effective → least effective)') or 'Item' | ||
Line 147: | Line 148: | ||
parent:addClass('wikitable stickyHeader') | parent:addClass('wikitable stickyHeader') | ||
local trHead = parent:tag('tr') | local trHead = parent:tag('tr') | ||
local lastHeader = nil | |||
trHead:addClass('headerRow-0') | trHead:addClass('headerRow-0') | ||
:tag('th'):wikitext('Slot'):done() | :tag('th'):wikitext('Slot'):done() | ||
:tag('th'):attr('colspan', greatest_row_size):wikitext( | :tag('th'):attr('colspan', colsize):wikitext(itemHeader):done() | ||
-- Add any additional header options | |||
for i = 2, number_of_possible_choices, 1 do | |||
local check = args['header' .. i] | |||
if check and Params.has_content(check) and i <= greatest_row_size then | |||
local header = trHead:tag('th') | |||
header:wikitext(check):done() | |||
lastHeader = header | |||
else | |||
if lastHeader ~= nil then | |||
lastHeader:attr('colspan', i - 1) | |||
end | |||
break | |||
end | |||
end | |||
if showDR then | if showDR then | ||
trHead:tag('th'):wikitext('DR%'):done() | trHead:tag('th'):wikitext('DR%'):done() |