A documentação para este módulo pode ser criada na página Módulo:Hero ID/doc
local p = {}
local cargo = mw.ext.cargo
local getArgs = require('Module:Arguments').getArgs
function p.main(frame)
local args = getArgs(frame, {
wrappers = {
'Template:Hero ID'
}
})
return p._main(args)
end
function p._main(args)
assert(args[1], 'Enter a hero name')
local cargoOutput = cargo.query('heroes', 'icon, title', { where='_pageName="' .. args[1] .. '"', groupBy='_pageID' })[1]
-- Check if cargo actually returned data.
assert(cargoOutput, string.format('Could not find Cargo data for "%s"', args[1]))
local formattedImage = string.format('[[%s|%s|link=%s|%s]]', cargoOutput['icon'], args[2] or '20px', args[1], args['text'] or cargoOutput['title'])
local formattedLink = string.format('[[%s|%s]]', args['link'] or args[1], args['text'] or cargoOutput['title'])
return string.format('<span class="image-link">%s %s</span>', formattedImage, formattedLink)
end
return p