No edit summary |
No edit summary |
||
Line 32: | Line 32: | ||
end |
end |
||
− | return render.icon(unpack(renderArgs)) |
+ | return '.'..render.icon(unpack(renderArgs))..'.' |
end |
end |
||
Revision as of 23:21, 2 March 2019
Documentation for this module may be created at Module:Render/Item/doc
local render = require('Module:Render')
local model = require('Module:Data').model
local p = {}
function p.icon(frame)
if frame:getParent():getTitle() == 'Template:Item/Icon' then frame = frame:getParent() end
local iname = frame.args[1]
local data = model.query('Item','_pageName,server,rare,type,icon',{where='iname="'..iname..'"'})
data = data[1] -- TODO Get the correct server
local renderArgs = {
'ItemIcon,'..data.icon,
model.getLoc(data._pageName, 'name'),
frame.args['link'] ~= 'none' and (mw.ext.cargo.query('Pages','_pageName',{where='type="Item" and iname="'..iname..'"'})[1] or {_pageName = model.getLoc(data._pageName, 'name')})._pageName or nil,
data.rare,
(data.type == 1 or data.type == 11) and 1 or 0,
128,
frame.args['count'] ~= '' and frame.args['count'] or nil,
frame.args['classes'],
nil,
}
-- if (item == nil) then return ('Invalid Item: '..iname) end
local name = frame.args['name'] ~= 'none' and ('[['..(renderArgs[3] and (renderArgs[3]..'|') or '')..renderArgs[2]..']]') or nil
if (frame.args['size'] == 'small') then
renderArgs[6] = 24
renderArgs[9] = name and '<span>'..name..'</span>'
else
renderArgs[9] = name and '<div>'..name..'</div>'
end
return '.'..render.icon(unpack(renderArgs))..'.'
end
return p