Modul:Tabbox: Unterschied zwischen den Versionen

Verwendung Modul:Faktenbox
K (Schützte „Modul:Tabbox“ ([Bearbeiten=Nur Administratoren erlauben] (unbeschränkt) [Verschieben=Nur Administratoren erlauben] (unbeschränkt)))
(Verwendung Modul:Faktenbox)
Zeile 1: Zeile 1:
local p = {} --p stands for package
local p = {} --p stands for package
local fab = require("Modul:Faktenbox")


function p.Tabbox( frame )
function p.Tabbox(frame)
local args = frame:getParent().args
local fbdata = fab.fbdata(frame)
-- Konsolenzeile zum Debuggen:
-- Before you ask: No, you cant' use extensionTag here!
-- =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_bild = p.bild(frame, args)
 
local tab_bild=''
local tpl_karte = p.karte(fbdata)
if tpl_bild:gsub("%s+", "") ~= '' then
tab_bild='<tab name=Bild>' ..  
tpl_bild .. '</tab>'
end
local tpl_karte = p.karte(frame, args)
local tab_karte=''
local tab_karte=''
if tpl_karte:gsub("%s+", "") ~= '' then
if tpl_karte:gsub("%s+", "") ~= '' then
Zeile 20: Zeile 15:


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


local t ='<div class=factbox><tabs>' ..  
local t ='<div class=factbox><tabs>' ..  
  tab_bild ..  
  fab.bildTab(fbdata) ..
  tab_karte ..
  tab_karte ..
  tab_tab ..  
  tab_tab ..  
Zeile 34: Zeile 29:


-- Use preprocess to render the factbox and all contens at once
-- Use preprocess to render the factbox and all contens at once
return frame:preprocess(t)
return fbdata.frame:preprocess(t)
end
 
function p.bild(frame, args)
    return frame:expandTemplate{title = 'CommonTabs/Bild', args=args}
end
end


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


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


return p
return p