Modul:Gaststätte

Aus FürthWiki
local p = {} --p stands for package
local c = require("Module:Common")

function p.Faktenbox(frame)
	local args = frame:getParent().args
	
	local tpl_bild = p.bild(frame, args)
	local tab_bild = ''
	if tpl_bild:gsub("%s+", "") ~= '' then
		tab_bild='<tab name=Bild>' .. 
		tpl_bild .. '</tab>'
	end
	
	-- The tab "Daten" is visible everytime
	local tpl_daten = p.daten(frame, args)
	local tab_daten = '<tab name=Daten>' .. 
	tpl_daten .. '</tab>'
	
	local tpl_karte = p.karte(frame, args)
	local tab_karte = ''
	if tpl_karte:gsub("%s+", "") ~= '' then
		tab_karte = '<tab name=Karte>' .. 
		tpl_karte .. '</tab>'
	end
	
	local tpl_folge = p.folge(frame, args)
	local tab_folge = ''
	if tpl_folge:gsub("%s+", "") ~= '' then
		tab_folge = '<tab name=Folge>' .. 
		tpl_folge .. '</tab>'
	end
	
	local tpl_angebot = p.angebot(frame, args)
	local tab_angebot = ''
	if tpl_angebot:gsub("%s+", "") ~= '' then
		tab_angebot = '<tab name=Angebot>' .. 
		tpl_angebot .. '</tab>'
	end
	
	t ='<div class=factbox><tabs>' .. 
	   tab_bild .. 
	   tab_daten ..
	   tab_folge ..
	   tab_karte ..
	   tab_angebot ..
	   '</tabs></div>'

	-- Use preprocess to render the factbox and all contens at once
	return frame:preprocess(t)
end

function p.folge(frame, args)
	return '<dl class="dataTable">' ..
		'<dt>Problem</dt><dd>Funktioniert noch ned!</dd></dl>'
end 

function p.bild(frame, args)
    return frame:expandTemplate{title='CommonTabs/Bild', args={Bild=args.bild}}
end

function p.daten(frame, args)
    return frame:expandTemplate{title='Gaststätte/Daten', args=args}
end

function p.karte(frame, args)
    local args_ = c.shallowcopy(args)
	args_["zoomdefault"] = 17
	return frame:expandTemplate{title='CommonTabs/Karte', args=args_}
end

function p.angebot(frame, args)
	return frame:expandTemplate{title='Gaststätte/Angebot', args=args}
end

return p