ElEditors, Interface administrators, Administrators
70,981
edits
No edit summary |
No edit summary Tag: Manual revert |
||
(14 intermediate revisions by the same user not shown) | |||
Line 17: | Line 17: | ||
if title == nil then | if title == nil then | ||
title = args.name | title = args.name | ||
end | |||
if title == nil then | |||
title = args['Name'] | |||
end | end | ||
Line 28: | Line 31: | ||
-- Adds a normal row | -- Adds a normal row | ||
function addField(param, field_name, double, field_value) | function addField(param, field_name, double, field_value, collapsed) | ||
if args[param] ~= nil or field_value ~= nil then | if args[param] ~= nil or field_value ~= nil then | ||
local row = infobox:tag('div'):addClass('infobox-row'); | local row = infobox:tag('div'):addClass('infobox-row'); | ||
Line 38: | Line 41: | ||
end | end | ||
row:tag('div'):addClass('infobox-row-title'):tag('span'):wikitext(field_name); | row:tag('div'):addClass('infobox-row-title'):tag('span'):wikitext(field_name); | ||
local content = row:tag('div'):addClass('infobox-row-content'); | |||
if (param == 'video' or param == 'tree' or param == 'stat') then | if (param == 'video' or param == 'tree' or param == 'stat') then | ||
content:wikitext(field_value); | |||
if param == 'video' then | if param == 'video' then | ||
content:addClass('infobox-video-row') | |||
end | end | ||
else | else | ||
local inner = content:tag('div') | |||
if collapsed then | |||
inner:addClass('mw-collapsible mw-collapsed') | |||
end | |||
inner:wikitext(field_value); | |||
end | end | ||
end | end | ||
if double == true then addField2(param, field_name) end | if double == true then | ||
addField2(param, field_name, collapsed) | |||
end | |||
end | end | ||
-- Adds a row with 2 columns | -- Adds a row with 2 columns | ||
function addField2(param, field_name) | function addField2(param, field_name, collapsed) | ||
if args[param .. '1'] ~= nil and args[param .. '2'] ~= nil then | if args[param .. '1'] ~= nil and args[param .. '2'] ~= nil then | ||
local row = infobox:tag('div'):addClass('infobox-row'):addClass('infobox-double-row'); | local row = infobox:tag('div'):addClass('infobox-row'):addClass('infobox-double-row'); | ||
Line 58: | Line 68: | ||
end | end | ||
row:tag('div'):addClass('infobox-row-title'):wikitext(field_name); | row:tag('div'):addClass('infobox-row-title'):wikitext(field_name); | ||
row:tag('div'):addClass('infobox-row-content'):tag(' | for i=1, 2, 1 do | ||
local inner = row:tag('div'):addClass('infobox-row-content'):tag('div') | |||
if collapsed then | |||
inner:addClass('mw-collapsible mw-collapsed') | |||
end | |||
inner:wikitext(args[param .. i]); | |||
end | |||
end | |||
end | |||
-- For adding multiple fields. | |||
function addFields(fields) | |||
for k, v in ipairs(fields) do | |||
if v.special then | |||
addField2(v.id, v.localize) | |||
else | |||
addField(v.id, v.localize, v.dual, v.value, v.collapsed) | |||
end | |||
end | end | ||
end | end | ||
return infobox; | return infobox; | ||