Modul:Faktenbox: Unterschied zwischen den Versionen

Faktenbox Karten-Tab nur wenn Karten-Args vorhanden
(Auslagerungen in Modul:Faktenbox/Tabs)
(Faktenbox Karten-Tab nur wenn Karten-Args vorhanden)
 
(23 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
local p = {}
local p = {}


local com = require("Modul:Common")local geo = require("Modul:Geo")
local geo = require("Modul:Geo")
local kar = require("Modul:Karte")


local fab_common = require("Modul:Faktenbox/Common")
local fab_common = require("Modul:Faktenbox/Common")
local fab_zeilen = require("Modul:Faktenbox/Zeilen")
local fab_zeilen = require("Modul:Faktenbox/Zeilen")
local fab_tabs = require("Modul:Faktenbox/Tabs")
local fab_tabs = require("Modul:Faktenbox/Tabs")
local fab_tabs_karte = require("Modul:Faktenbox/Tabs/Karte")
local fab_tabs_adressen = require("Modul:Faktenbox/Tabs/Adressen")


function p.Faktenbox(frame)
function p.Faktenbox(frame)
Zeile 12: Zeile 15:
-- Konsolenzeile zum Debuggen:
-- Konsolenzeile zum Debuggen:
-- =p.Faktenbox{pargs={Bild="Schwabacher Straße 12 Dez 2020 1.jpg",["Straße"]="Schwabacher Straße",location="Rathaus Fürth",Objekt="Häusle"}}
-- =p.Faktenbox{pargs={Bild="Schwabacher Straße 12 Dez 2020 1.jpg",["Straße"]="Schwabacher Straße",location="Rathaus Fürth",Objekt="Häusle"}}
local t = ""


-- Basis-Faktenbox-Daten (Klasse/Kategorie/Formular)
-- Basis-Faktenbox-Daten (Klasse/Kategorie/Formular)
-- Kein(e) Klasse/Kategorie/Formular!
-- Kein(e) Klasse/Kategorie/Formular!
local fbdata = fab_common.fbdata_(frame)
local fbdata = fab_common.getFbdata_(frame)
fbdata.hide_loc_latlon = "nein" -- Karte darf GeoJson und Objekt-Lokationen haben
fbdata.attr.noattr = true -- Keine Attribute setzen


-- Tabs einsammeln und zusammenfügen
-- Tabs einsammeln und zusammenfügen
local box =  
t = t .. fab_tabs.bildTab_(fbdata)
"<div class = factbox><tabs>" ..
if kar.kartenArgsVorhanden(fbdata.pargs) then
p.bildTab(fbdata) ..
t = t .. fab_tabs_karte.kartenTab_(fbdata)
p.kartenTab(fbdata) ..
end
p.datenUniversalDatenTab(fbdata) ..
t = t .. fab_tabs.universalDatenTab_(fbdata)
"</tabs></div>"
t = fab_tabs.factbox_header_footer_(t)


-- Sonstige gemeinsame Dinge anfügen (Klasse, Formular, Kategorien, Wartung, ...)
-- Sonstige gemeinsame Dinge anfügen (Klasse, Formular, Kategorien, Wartung, ...)
box = box .. fab_common.common_(fbdata, false)
t = t .. fab_common.postprocess_(fbdata, false)
mw.log("box = " .. box)
-- mw.logObject(t, "t")


-- Pre-Processing und String-Länge checken
-- Pre-Processing und String-Länge checken
box = fbdata.frame:preprocess(box)
t = fbdata.frame:preprocess(t)
box = box .. com.returnStringCheck(box)
-- mw.logObject(t, "t")
-- mw.log("box = " .. box)
return t
return box
end
end


-- wrapper für functions von Modul:Faktenbox/Tabs
-- wrapper für functions von Modul:Faktenbox/Tabs
function p.datenUniversalDatenTab(fbdata) return fab_tabs.datenUniversalDatenTab_(fbdata) end
function p.universalDatenTab(...) return fab_tabs.universalDatenTab_(...) end
function p.bildTab(fbdata, seite) return fab_tabs.bildTab_(fbdata, seite) end
function p.bildTab(...) return fab_tabs.bildTab_(...) end
function p.kartenTab(fbdata) return fab_tabs.kartenTab_(fbdata) end
function p.kartenTab(...) return fab_tabs_karte.kartenTab_(...) end
function p.benennungenTab(fbdata) return fab_tabs.benennungenTab_(fbdata) end
function p.getKartenArgs(...) return fab_tabs_karte.getKartenArgs_(...) end
function p.adressenTab(fbdata) return fab_tabs.adressenTab_(fbdata) end
function p.benennungenTab(...) return fab_tabs.benennungenTab_(...) end
function p.tab(t, name) return fab_tabs.tab_(t, name) end
function p.adressenTab(...) return fab_tabs_adressen.adressenTab_(...) end
function p.tab(...) return fab_tabs.tab_(...) end
function p.table_header_footer(...) return fab_tabs.table_header_footer_(...) end
function p.factbox_header_footer(...) return fab_tabs.factbox_header_footer_(...) end


-- wrapper für functions von Modul:Faktenbox/Zeilen
-- wrapper für functions von Modul:Faktenbox/Zeilen
function p.zeileKategorieSeite(fbdata, kindex) return fab_zeilen.zeileKategorieSeite_(fbdata, kindex) end
function p.zeileKategorieSeite(...) return fab_zeilen.zeileKategorieSeite_(...) end
function p.zeileStrasseHnr(fbdata) return fab_zeilen.zeileStrasseHnr_(fbdata) end
function p.zeileStrasseHnr(...) return fab_zeilen.zeileStrasseHnr_(...) end
function p.zeileAktenNr(fbdata) return fab_zeilen.zeileAktenNr_(fbdata) end
function p.zeileAktenNr(...) return fab_zeilen.zeileAktenNr_(...) end
function p.zeileGeoDaten(fbdata) return fab_zeilen.zeileGeoDaten_(fbdata) end
function p.zeileGeoDaten(...) return fab_zeilen.zeileGeoDaten_(...) end
function p.zeileDatum(args) return fab_zeilen.zeileDatum_(args) end
function p.zeileDatum(...) return fab_zeilen.zeileDatum_(...) end
function p.zeileSemantikBrowsen(fbdata) return fab_zeilen.zeileSemantikBrowsen_(fbdata)         end
function p.zeileSemantikBrowsenAbfrage(...) return fab_zeilen.zeileSemantikBrowsenAbfrage_(...) end
function p.zeile(args) return fab_zeilen.zeile_(args) end
function p.zeile(...) return fab_zeilen.zeile_(...) end


-- wrapper für functions von Modul:Faktenbox/Common
-- wrapper für functions von Modul:Faktenbox/Common
function p.faktenboxSemantikBrowsen(fbdata) return fab_common.faktenboxSemantikBrowsen_(fbdata) end
function p.postprocess(...) return fab_common.postprocess_(...) end
function p.common(fbdata) return fab_common.common_(fbdata) end
function p.getFbdata(...) return fab_common.getFbdata_(...) end
function p.fbdata(frame) return fab_common.fbdata_(frame) end
function p.addWartungsmeldung(...) return fab_common.addWartungsmeldung_(...) end


return p
return p