Module:Variants: Difference between revisions
Only link to a page once
Im Wired In (talk | contribs) (Fix link output) |
Im Wired In (talk | contribs) (Only link to a page once) |
||
Line 21:
'?Variant name',
'?Version anchor',
'?-Has subobject #',
'?#-',
get_images and '?Image#64px;x64px = Image' or nil,
Line 37 ⟶ 38:
local contents
if smw_data then
local formatted, pageList = {}, {}
for _, entry in ipairs(smw_data) do
local variant_name = entry['Variant name']
if variant_name then
local page = entry['-Has subobject'] or entry[1]
if page:sub(1, 1 + #variant_name + #' (grade ') == ':' .. variant_name .. ' (grade ' and page:sub(-1) == ')' then
local grade_number = page:sub(2 + #variant_name + #' (grade ', -2)
Line 47 ⟶ 48:
variant_name = 'Grade ' .. grade_number
end
if not pageList[page] then
table.insert(formatted, ('[[%s|
pageList[page] = true
end
else
table.insert(formatted, ('[[%s]]'):format(entry[1]))
|