Module:Profession info
Module documentation
This documentation is transcluded from Module:Profession info/doc. [edit] [history] [purge]
This module does not have any documentation. Please consider adding documentation at Module:Profession info/doc. [edit]
Module:Profession info's function main is invoked by Template:Profession info.
Module:Profession info requires Module:Edit button.
Module:Profession info requires Module:Param Parse.
Module:Profession info requires Module:Profession clickpic.
Module:Profession info requires Module:Quantity box.
local p = {}
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local hc = require('Module:Param Parse').has_content
local qty = require('Module:Quantity box')._main
local pcp = require('Module:Profession clickpic')._main
function p.main(frame)
local args = frame:getParent().args
local function exparg(xp)
if hc(xp) then
return qty(xp)
else
return qty(0) .. edit
end
end
local function levelarg(profession, level)
if hc(profession) and hc(level) then
return pcp(profession, level)
else
return edit
end
end
local function durationarg(duration)
if hc(duration) then
return duration..' seconds'
else
return edit
end
end
local smw_properties = {
['Skilling node name'] = args.name,
['Uses profession'] = args.profession,
['Profession level'] = args.level,
['Profession experience'] = args.xp,
}
mw.smw.set(smw_properties)
local out = mw.html.create('table')
:addClass('wikitable')
:tag('tr')
:tag('th')
:attr{ colspan = '2' }
:wikitext(args.name)
:done()
:done()
:tag('tr')
:tag('th')
:wikitext('Level required')
:done()
:tag('td')
:wikitext(levelarg(args.profession, args.level))
:done()
:done()
:tag('tr')
:tag('th')
:wikitext('[['..args.profession..'|'..args.profession..' XP]]')
:done()
:tag('td')
:wikitext(exparg(args.xp))
:done()
:done()
:tag('tr')
:tag('th')
:wikitext('Duration')
:done()
:tag('td')
:wikitext(durationarg(args.duration))
:done()
:done()
if hc(args.tool) then
out
:tag('tr')
:tag('th')
:wikitext('Required tool')
:done()
:tag('td')
:wikitext(args.tool)
:done()
:done()
end
if hc(args.input) then
out
:tag('tr')
:tag('th')
:wikitext('Required input')
:done()
:tag('td')
:wikitext(args.input)
:done()
:done()
end
return out
end
return p