Module:TableGenerator: Difference between revisionsGive feedback
Jump to navigation
Jump to search
mNo edit summary |
m using 1 parameter split by commas as args |
||
| Line 8: | Line 8: | ||
--Item 1, Item 2, Item 3 | --Item 1, Item 2, Item 3 | ||
--Item 4, | --Item 4, Item 5 | ||
function p.generateHtmlTable(frame) | function p.generateHtmlTable(frame) | ||
-- Get the arguments passed to the template | -- Get the arguments passed to the template | ||
| Line 14: | Line 14: | ||
local cols = tonumber(args['cols']) or 3 -- Default number of columns is 3 | local cols = tonumber(args['cols']) or 3 -- Default number of columns is 3 | ||
local onlyBody = args['onlyBody'] == 'true' -- Check if onlyBody is set to true | local onlyBody = args['onlyBody'] == 'true' -- Check if onlyBody is set to true | ||
local cell_values = args['cell_values'] or "" -- Get the cell values argument | |||
local values = {} -- Table to hold the individual cell values | |||
-- Split the cell_values string by commas | |||
for value in cell_values:gmatch("[^,]+") do | |||
table.insert(values, value:match("^%s*(.-)%s*$")) -- Trim whitespace | |||
end | |||
-- Initialize the HTML table structure | -- Initialize the HTML table structure | ||
| Line 23: | Line 30: | ||
local count = 0 | local count = 0 | ||
for i, value in ipairs( | for i, value in ipairs(values) do | ||
-- If it's the start of a new row | -- If it's the start of a new row | ||
if count % cols == 0 then | if count % cols == 0 then | ||
| Line 47: | Line 54: | ||
return result | return result | ||
end | end | ||
return p | return p | ||