Jump to content

Module:Broadcaster

From Wikipedia, the free encyclopedia

local getArgs = require('Module:Arguments').getArgs
local p = {}

local function getData()
	return mw.loadData('Module:Broadcaster/data')
end

function p.main(f)
	local args = getArgs(f)
	local req = string.lower(args[1])
	local att = args[2]
	local link = args['link']
	
	local broadcasters = getData()
	
	local result
	local name
	if broadcasters[req] then
		name = broadcasters[req]['name']
	else
		return '<span class="error">Unknown broadcaster "'..req..'" <small>([[Template:Broadcaster|help]])</small></span>'
	end
	
	if type(name) == 'table' then
		local default_name = name['default']
		name = name[default_name]
	end
	
	if att and att ~= 'name' then
		result = broadcasters[req][att]
	else
		result = name
	end
	
	if link then
		result = '[['..name..'|'..result..']]'
	end
	
	return result
end

return p