Module:ItemBox
Documentation for this module may be created at Module:ItemBox/doc
local export = {}
local pagename = mw.title.getCurrentTitle().fullText
function basic_row(table, key, value)
local row = table:tag('tr')
row:tag('td'):wikitext('<b>' .. key .. '</b>')
row:tag('td'):wikitext(value)
return row
end
function full_row(table, key, value)
local row = table:tag('tr')
row:tag('td'):attr('colspan', '2'):wikitext('<b>' .. key .. '</b>')
return row
end
function export.show(frame)
local table = mw.html.create('table'):addClass('coa-infobox'):addClass('item')
-- Create title header
local td = table:tag('tr'):tag('td')
td:addClass('infobox-header'):attr('colspan', '2')
:wikitext(frame.args.name)
-- Add image box
table:tag('tr'):tag('td'):addClass('infobox-image'):attr('colspan', 2)
:wikitext('[[File:' .. frame.args.image .. ']]')
-- Item description goes right below
full_row(table, frame.args.description or '')
-- Separation header
table:tag('tr'):tag('td'):addClass('infobox-header'):attr('colspan', 2)
-- Item basic attributes
basic_row(table, 'Level', frame.args.level)
-- Optional values
if frame.args.obtained then
basic_row(table, 'Obtained', frame.args.obtained)
end
-- Separation header
table:tag('tr'):tag('td'):addClass('infobox-header'):attr('colspan', 2)
return tostring(table)
end
return export