Module:Room features: Difference between revisions

Change fallback image to a questionmark, link image to the target page
(hide loc qty if 1, add version name)
(Change fallback image to a questionmark, link image to the target page)
 
(2 intermediate revisions by 2 users not shown)
Line 35:
function p._main(args)
local frame = mw.getCurrentFrame()
local ret = ''{}
local location = args[1] or mw.title.getCurrentTitle().fullText
 
local query = mw.smw.ask(base_query(location))
if query ~= nil then
Line 46:
for i,v in ipairs(query) do
local key = infobox_cat_map[v.infobox_sub or v.infobox]
-- Can be nil - See East Beach for example
table.insert(results_by_type[key], v)
if key ~= nil then
table.insert(results_by_type[key], v)
end
end
for cat,results in pairs(results_by_type) do
if #results > 0 then
table.insert(ret, = ret tostring(mw.html. create('===h3' .. ):wikitext(header_text_override[cat] or cat) .. '===\n'))
 
local gallerygallery_lines = '<gallery>\n'{}
for i,v in ipairs(results) do
local image = v.image_sub or v.image or 'File:SectionUnknown anchorepisode lightinfobox icon.svgpng'
local quantity = ''
if v['Location quantity'] and (v['Location quantity'] ~= 'Unknown' and v['Location quantity'] ~= '1') then
Line 66 ⟶ 69:
end
local display_name = v.name_sub or v.name
gallery = gallery .table.insert(gallery_lines, string.format('%s|link=%s|%s[[%s|%s%s]]\n', image, obj_name, quantity, obj_name, display_name, version_name))
end
 
gallery = gallery .. '</gallery>\n\n'
table.insert(ret, tostring(frame:extensionTag{ name = 'gallery', content = table.concat(gallery_lines, '\n'), args = {} }))
ret = ret .. gallery
end
end
end
return frame:preprocesstable.concat(ret, '')
end