From WikiChip
Difference between revisions of "Module:comptable"
Line 17: | Line 17: | ||
else | else | ||
r = r .. '<th>' .. val .. '</th>' | r = r .. '<th>' .. val .. '</th>' | ||
+ | end | ||
+ | end | ||
+ | |||
+ | return '<tr class="comptable-header"><th> </th>' .. r .. '</tr>' | ||
+ | end | ||
+ | |||
+ | function p.sep(frame) | ||
+ | if frame == mw.getCurrentFrame() then | ||
+ | origArgs = frame:getParent().args | ||
+ | else | ||
+ | origArgs = frame | ||
+ | end | ||
+ | |||
+ | local r = '' | ||
+ | |||
+ | for i = 2, 30 do | ||
+ | local val = origArgs[i] | ||
+ | if not val then break end | ||
+ | if string.find(val, ":") then | ||
+ | r = r .. string.gsub(val, "(%d+):(.+)", '<th colspan="%1" style="text-align: left;">%2</th>') | ||
+ | else | ||
+ | r = r .. '<th style="text-align: left;">' .. val .. '</th>' | ||
end | end | ||
end | end |
Revision as of 20:12, 23 August 2017
Documentation for this module may be created at Module:comptable/doc
local p = {}
function p.main(frame)
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
local r = ''
for i = 2, 30 do
local val = origArgs[i]
if not val then break end
if string.find(val, ":") then
r = r .. string.gsub(val, "(%d+):(.+)", '<th colspan="%1">%2</th>')
else
r = r .. '<th>' .. val .. '</th>'
end
end
return '<tr class="comptable-header"><th> </th>' .. r .. '</tr>'
end
function p.sep(frame)
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
local r = ''
for i = 2, 30 do
local val = origArgs[i]
if not val then break end
if string.find(val, ":") then
r = r .. string.gsub(val, "(%d+):(.+)", '<th colspan="%1" style="text-align: left;">%2</th>')
else
r = r .. '<th style="text-align: left;">' .. val .. '</th>'
end
end
return '<tr class="comptable-header"><th> </th>' .. r .. '</tr>'
end
function p.cols(frame)
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
local r = ''
for i = 2, 30 do
local val = origArgs[i]
if not val then break end
if string.match(val, '^%%.+') then
r = r .. '<th data-sort-type="number">' .. string.sub(val, 2) .. '</th>'
else
r = r .. '<th>' .. val .. '</th>'
end
end
return '<tr class="comptable-header"><th class="unsortable">Model</th>' .. r .. '</tr>'
end
return p