Modul:Parlamente

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Vorlagenprogrammierung Diskussionen Lua Unterseiten
Modul Deutsch English

Modul: Dokumentation

Diese Seite enthält Code in der Programmiersprache Lua. Einbindungszahl Cirrus


local cfg = mw.loadData('Modul:Parlamente/Liste');
local getArgs = require('Modul:Arguments').getArgs

local function name(staat)
	local a = staat
	a = mw.text.decode(a)
	return a
end

local function parl(volksvertretung)
	volksvertretung = volksvertretung[1]
	return volksvertretung
end

local function _volksvertretung(staat)
	local staat = name(staat)
	local volksvertretung = cfg.info[staat]
	if volksvertretung == nil then return 'Volksvertretung' else
	return parl(volksvertretung)
	end
end

local function volksvertretung(frame)
	local args = getArgs(frame, {frameOnly = true})
	return _volksvertretung(args[1])
end

local function mandate(sitze)
	sitze = sitze[2]
	return sitze
end

local function _sitze(staat)
	local staat = name(staat)
	local sitze = cfg.info[staat]
	if sitze == nil then return 'Sitze' else
	return mandate(sitze)
	end
end

local function sitze(frame)
	local args = getArgs(frame, {frameOnly = true})
	return _sitze(args[1])
end

local function epmandate(epsitze)
	epsitze = epsitze[1]
	return epsitze
end

local function _epsitze(staat)
	local staat = name(staat)
	local epsitze = cfg.europar[staat]
	if epsitze == nil then return 'epsitze' else
	return epmandate(epsitze)
	end
end

local function epsitze(frame)
	local args = getArgs(frame, {frameOnly = true})
	return _epsitze(args[1])
end

local function tabelle(frame)
	local root = mw.html.create('table'):addClass('wikitable sortable')
	root:tag('tr')
		:tag('th'):wikitext('Staat'):done()
		:tag('th'):wikitext('Volksvertretung'):done()
		:tag('th'):wikitext('Sitze'):done()
	for staat, value in pairs(cfg.info) do
	root:tag('tr')
		:tag('td'):wikitext('' .. staat .. ''):done()
		:tag('td'):wikitext(value[1]):done()
		:tag('td'):wikitext(value[2]):done()
	end
	return root
end

local function eptabelle(frame)
	local root = mw.html.create('table'):addClass('wikitable sortable')
	root:tag('tr')
		:tag('th'):wikitext('Staat'):done()
		:tag('th'):wikitext('Sitze'):done()
	for staat, value in pairs(cfg.europar) do
	root:tag('tr')
		:tag('td'):wikitext('' .. staat .. ''):done()
		:tag('td'):wikitext(value[1]):done()
	end
	return root
end

return {
	volksvertretung = volksvertretung,
	_volksvertretung = _volksvertretung,
	sitze = sitze,
	_sitze = _sitze,
	epsitze = epsitze,
	_epsitze = _epsitze,
	tabelle = tabelle,
	eptabelle = eptabelle,
}