Module:Villagers

From Foundation - Wiki
Jump to navigation Jump to search

Documentation for this module may be created at Module:Villagers/doc

local p = {}
local b = mw.loadData('Module:Buildings')
local a = require('Module:Arguments')
local com = require('Module:Common')

function p.jobs(frame)
	local args = a.getArgs(frame)
	if args[1] then
		local rank = com.fUpper(args[1])
		local jobs = {}

		for k, v in pairs(b) do
			if v.rank == rank then
				jobs[k] = true
			end
		end

		table.sort(jobs)
		mw.log(#jobs)
		local cols = {
			['column-count'] = (args[2] or 3)
		}
		local jobList = mw.html.create('div')
		jobList:addClass('job-list')
		:css(cols)
		:tag('ul')
	
		for k, v in pairs(jobs) do
			local jobName = mw.html.create('li')
			jobName:wikitext('[[' .. com.fUpper(k) .. ']]' .. ((b[k].job and '- ' .. b[k].job) or ''))
			jobList:node(jobName)
		end
		
		return jobList
	end
	
	return ''
end
		
return p