Module:TableGenerator: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
Line 2: | Line 2: | ||
function p.generateTable(frame) | function p.generateTable(frame) | ||
local args = frame | -- Get the arguments passed to the template | ||
local cols = tonumber(args[ | local args = frame.args | ||
local cols = tonumber(args['cols']) or 3 -- Default number of columns is 3 | |||
local | |||
-- Initialize the table structure | |||
local result = '{| class="wikitable"\n' | |||
for i, | local count = 0 | ||
-- | for i, value in ipairs(args) do | ||
-- If the first argument is 'cols', skip it | |||
if i > 1 then | |||
-- If it's the start of a new row | |||
if count % cols == 0 then | |||
result = result .. '|-\n' | |||
end | |||
-- Add the value as a table cell | |||
result = result .. '| ' .. value .. '\n' | |||
count = count + 1 | |||
end | end | ||
end | end | ||
-- Close any unfilled row | |||
if count % cols ~= 0 then | |||
result = result .. '|-\n' | |||
end | |||
-- Close the table | |||
result = result .. '|}' | |||
return result | |||
return | |||
end | end | ||
return p | return p |
Revision as of 21:28, 14 September 2024
Documentation for this module may be created at Module:TableGenerator/doc
local p = {}
function p.generateTable(frame)
-- Get the arguments passed to the template
local args = frame.args
local cols = tonumber(args['cols']) or 3 -- Default number of columns is 3
-- Initialize the table structure
local result = '{| class="wikitable"\n'
local count = 0
for i, value in ipairs(args) do
-- If the first argument is 'cols', skip it
if i > 1 then
-- If it's the start of a new row
if count % cols == 0 then
result = result .. '|-\n'
end
-- Add the value as a table cell
result = result .. '| ' .. value .. '\n'
count = count + 1
end
end
-- Close any unfilled row
if count % cols ~= 0 then
result = result .. '|-\n'
end
-- Close the table
result = result .. '|}'
return result
end
return p