Content added Content deleted
(Created page with "local getArgs = require('Module:Arguments').getArgs local QueryBuilder = require('Module:QueryBuilder') local ItemThumbnail = require('Module:Item thumbnail')._main local p = {} function p.main(frame) local args = getArgs(frame) local item = string.lower(args['item'] or '') local count = args['count'] or 1 local quantity = args['quantity'] local cost = args['cost'] local thumbnail = '' local name = '' if item then local qb = QueryBuilde...") |
m (fix query) |
||
Line 22: | Line 22: | ||
:setFields([[ |
:setFields([[ |
||
_pageName, |
_pageName, |
||
item_name |
item_name, |
||
image |
image |
||
]]) |
]]) |
Revision as of 02:52, 12 July 2022
Documentation for this module may be created at Module:Event shop item/doc
local getArgs = require('Module:Arguments').getArgs
local QueryBuilder = require('Module:QueryBuilder')
local ItemThumbnail = require('Module:Item thumbnail')._main
local p = {}
function p.main(frame)
local args = getArgs(frame)
local item = string.lower(args['item'] or '')
local count = args['count'] or 1
local quantity = args['quantity']
local cost = args['cost']
local thumbnail = ''
local name = ''
if item then
local qb = QueryBuilder.new()
qb
:setTables('Items')
:setFields([[
_pageName,
item_name,
image
]])
:addWhere('item_name', '=', item)
local results = qb:query()
if #results > 0 then
local image = results[1]['image']
local itemName = results[1]['item_name']
local page = results[1]['_pageName']
thumbnail = ItemThumnail{
image = image,
link = page,
count = count
}
name = string.format('[[%s|%s]]', page, itemName)
if tonumber(count) > 1 then
name = name .. ' x' ..count
end
end
end
return frame:expandTemplate{
title = 'Event shop line',
args = {
thumbnail = thumbnail,
name = name,
quantity = quantity,
cost = cost
}
}
end
return p