Modul:Tabbox

Aus FürthWiki

Version vom 22. Oktober 2025, 10:30 Uhr von HeikoBot (Diskussion | Beiträge) (Verwendung Modul:Faktenbox)

local p = {} --p stands for package
local fab = require("Modul:Faktenbox")

function p.Tabbox(frame)
	local fbdata = fab.fbdata(frame)
	-- Konsolenzeile zum Debuggen:
	-- =p.Tabbox{pargs={Bild="Schiefer Turm vor Rathaus 2018.jpg",location="Rathaus Rathaus, Fürth, Bayern, Deutschland","Info","Das Rathaus der Stadt [[Fürth]], das von 1840 bis 1850 erbaut wurde, ist mit der Stadtkirche St. Michael das Wahrzeichen der Stadt Fürth."}}

	local tpl_karte = p.karte(fbdata)
	local tab_karte=''
	if tpl_karte:gsub("%s+", "") ~= '' then
		tab_karte='<tab name=Karte>' .. 
		tpl_karte .. '</tab>'
	end

	local tab_tab=''
	if fbdata.pargs[2] ~= nil then
		local tpl_tab = p.tab(fbdata, fbdata.pargs[2])
		if tpl_tab:gsub("%s+", "") ~= '' then
			tab_tab='<tab name=' .. fbdata.pargs[1] .. '>' .. tpl_tab .. '</tab>'
		end
	end

	local t ='<div class=factbox><tabs>' .. 
	   fab.bildTab(fbdata) ..
	   tab_karte ..
	   tab_tab .. 
	   '</tabs></div>'

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

function p.karte(fbdata)
    return fbdata.frame:expandTemplate{title = 'Tabbox/Karte', args=fbdata.pargs}
end

function p.tab(fbdata, tabcontent)
    return fbdata.frame:expandTemplate{title = 'Tabbox/Tab', args={tabcontent=tabcontent}}
end

return p