Module:CollectionLog: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
function p.render(frame) | function p.render(frame) | ||
local args = frame:getParent().args | local args = frame:getParent().args | ||
local html = mw.html.create('div'):addClass('collection-log-grid') | local html = mw.html.create('div'):addClass('collection-log-wrapper') | ||
-- Add Killcount if present, above the grid | |||
if args.Killcount then | |||
local killcountDiv = mw.html.create('div') | |||
:addClass('collection-log-killcount') | |||
:wikitext('Killcount: ' .. args.Killcount) | |||
html:node(killcountDiv) | |||
end | |||
-- Collection log grid | |||
local grid = mw.html.create('div'):addClass('collection-log-grid') | |||
for name, qty in pairs(args) do | for name, qty in pairs(args) do | ||
if name ~= | if name ~= "Killcount" then | ||
qty = tonumber(qty) or 0 | qty = tonumber(qty) or 0 | ||
local item = mw.html.create('div') | local item = mw.html.create('div') | ||
Line 24: | Line 35: | ||
end | end | ||
grid:node(item) | |||
end | end | ||
end | end | ||
html:node(grid) | |||
return tostring(html) | return tostring(html) |
Revision as of 06:37, 19 May 2025
Documentation for this module may be created at Module:CollectionLog/doc
local p = {}
function p.render(frame)
local args = frame:getParent().args
local html = mw.html.create('div'):addClass('collection-log-wrapper')
-- Add Killcount if present, above the grid
if args.Killcount then
local killcountDiv = mw.html.create('div')
:addClass('collection-log-killcount')
:wikitext('Killcount: ' .. args.Killcount)
html:node(killcountDiv)
end
-- Collection log grid
local grid = mw.html.create('div'):addClass('collection-log-grid')
for name, qty in pairs(args) do
if name ~= "Killcount" then
qty = tonumber(qty) or 0
local item = mw.html.create('div')
:addClass('collection-log-item')
:addClass(qty > 0 and 'obtained' or 'missing')
item:wikitext(string.format(
'[[File:%s.png|32x32px|link=|alt=%s|title=%s]]',
name, name, name
))
if qty > 1 then
local badge = mw.html.create('div')
:addClass('collection-log-qty-badge')
:wikitext(tostring(qty))
item:node(badge)
end
grid:node(item)
end
end
html:node(grid)
return tostring(html)
end
return p