Modul:Gaststätte: Unterschied zwischen den Versionen

Aus FürthWiki

(fix shallowcopy)
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
local p = {} --p stands for package
local p = {} --p stands for package
local c = require( "Module:Common" )
local c = require("Module:Common")


function p.Faktenbox( frame )
function p.Faktenbox(frame)
pf = frame:getParent()
local args = frame:getParent().args
args = pf.args
-- Before you ask: No, you cant' use extensionTag here!
local tpl_bild = p.bild(frame, args)
tpl_bild = p.Bild( frame, args )
local tab_bild = ''
tab_bild=''
if tpl_bild:gsub("%s+", "") ~= '' then
if tpl_bild:gsub("%s+", "") ~= '' then
tab_bild='<tab name=Bild>' ..  
tab_bild='<tab name=Bild>' ..  
Zeile 15: Zeile 13:
-- The tab "Daten" is visible everytime
-- The tab "Daten" is visible everytime
tpl_daten = p.Daten( frame, args )
local tpl_daten = p.daten(frame, args)
tab_daten='<tab name=Daten>' ..  
local tab_daten = '<tab name=Daten>' ..  
tpl_daten .. '</tab>'
tpl_daten .. '</tab>'
tpl_karte = p.Karte( frame, args )
local tpl_karte = p.karte(frame, args)
tab_karte=''
local tab_karte = ''
if tpl_karte:gsub("%s+", "") ~= '' then
if tpl_karte:gsub("%s+", "") ~= '' then
tab_karte='<tab name=Karte>' ..  
tab_karte = '<tab name=Karte>' ..  
tpl_karte .. '</tab>'
tpl_karte .. '</tab>'
end
end
tpl_folge = p.Folge( frame, args )
local tpl_folge = p.folge(frame, args)
tab_folge=''
local tab_folge = ''
if tpl_folge:gsub("%s+", "") ~= '' then
if tpl_folge:gsub("%s+", "") ~= '' then
tab_folge='<tab name=Folge>' ..  
tab_folge = '<tab name=Folge>' ..  
tpl_folge .. '</tab>'
tpl_folge .. '</tab>'
end
end
tpl_angebot = p.Angebot( frame, args )
local tpl_angebot = p.angebot(frame, args)
tab_angebot=''
local tab_angebot = ''
if tpl_angebot:gsub("%s+", "") ~= '' then
if tpl_angebot:gsub("%s+", "") ~= '' then
tab_angebot='<tab name=Angebot>' ..  
tab_angebot = '<tab name=Angebot>' ..  
tpl_angebot .. '</tab>'
tpl_angebot .. '</tab>'
end
end
Zeile 52: Zeile 50:
end
end


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


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


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


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


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


return p
return p

Version vom 24. August 2025, 12:46 Uhr

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='Bildertab', 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='Kartentab', args=args_}
end

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

return p