Module:Talent: Difference between revisions
From eSportsAmaze
More actions
Esportsamaze (talk | contribs) No edit summary |
Esportsamaze (talk | contribs) No edit summary |
||
| Line 4: | Line 4: | ||
function p.main(frame) | function p.main(frame) | ||
local args = frame:getParent().args | local args = frame:getParent().args | ||
local container = html.create('div'):addClass('talent- | local container = html.create('div'):addClass('talent-container') | ||
-- Loop through group1, group2... | |||
for i = 1, 20 do | for i = 1, 20 do | ||
local role = args['group' .. i] | local role = args['group' .. i] | ||
local people = args['list' .. i] | local people = args['list' .. i] | ||
if role and role ~= "" and people and people ~= "" then | if role and role ~= "" and people and people ~= "" then | ||
local | -- Create the Row | ||
local row = container:tag('div'):addClass('talent-row') | |||
local | |||
-- 1. The Header (Left Side) | |||
row:tag('div'):addClass('talent-header'):wikitext(role) | |||
-- 2. The Pills Container (Right Side) | |||
local listDiv = row:tag('div'):addClass('talent-list') | |||
local items = mw.text.split(people, ",") | local items = mw.text.split(people, ",") | ||
for _, | for _, name in ipairs(items) do | ||
name = mw.text.trim(name) | |||
-- If user accidentally leaves an empty comma | |||
if name ~= "" then | if name ~= "" then | ||
-- | -- Simple Text Pill | ||
listDiv:tag('div'):addClass('talent-pill') | |||
:wikitext('[[' .. name .. ']]') | :wikitext('[[' .. name .. ']]') | ||
end | end | ||
Latest revision as of 12:31, 6 February 2026
Documentation for this module may be created at Module:Talent/doc
local p = {}
local html = mw.html
function p.main(frame)
local args = frame:getParent().args
local container = html.create('div'):addClass('talent-container')
-- Loop through group1, group2...
for i = 1, 20 do
local role = args['group' .. i]
local people = args['list' .. i]
if role and role ~= "" and people and people ~= "" then
-- Create the Row
local row = container:tag('div'):addClass('talent-row')
-- 1. The Header (Left Side)
row:tag('div'):addClass('talent-header'):wikitext(role)
-- 2. The Pills Container (Right Side)
local listDiv = row:tag('div'):addClass('talent-list')
local items = mw.text.split(people, ",")
for _, name in ipairs(items) do
name = mw.text.trim(name)
-- If user accidentally leaves an empty comma
if name ~= "" then
-- Simple Text Pill
listDiv:tag('div'):addClass('talent-pill')
:wikitext('[[' .. name .. ']]')
end
end
end
end
return tostring(container)
end
return p