Modul:Kirche: Unterschied zwischen den Versionen

(kategorie2 = "Gebäude",)
(table_header_footer(), factbox_header_footer())
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
local p = {} --p stands for package
local p = {}
 
local com = require("Modul:Common")
local com = require("Modul:Common")
local dev = require("Modul:Development")
local str = require("Modul:String")
local wik = require("Modul:Wiki")
local geo = require("Modul:Geocode")
local kat = require("Modul:Kategorie")
local que = require("Modul:Queries")
local fab = require("Modul:Faktenbox")
local fab = require("Modul:Faktenbox")
local geb = require("Modul:Gebäude")
local geb = require("Modul:Gebäude")
local formular = "Kirche" -- ggf. "Kirche/Work"


function p.Faktenbox(frame)
function p.Faktenbox(frame)
-- mw.log("Faktenbox(frame)")
-- mw.log("Faktenbox(frame)")
-- mw.logObject(frame)
-- mw.logObject(frame)
local args, noframe = dev.GetParentArgs(frame)


-- Klasse/Kategorie setzen
-- Basis-Faktenbox-Daten (Klasse/Kategorie/Formular)
local klasse = "Kirche"
local fbdata = fab.getFbdata(frame)
local klasse2 = "Gebäude"
fbdata.klasse = {"Kirche", "Gebäude"}
local kategorie = kat.mehrzahl(klasse)
fbdata.kategorie = {"Kirchen", "Gebäude"}
local kategorie2 = kat.mehrzahl(klasse2)
fbdata.formular = "Kirche" -- ggf. "Kirche/Work"
mw.smw.set("KlassenName = " .. klasse)


-- Straße/Hausnummer Formular-Eingaben analysieren
-- Straße/Hausnummer Formular-Eingaben analysieren, Postleitzahl ermitteln
local strasseHnr = geb.strasseHnrParser(args)
fbdata.strasse_hnr = geb.strasseHnrParser(fbdata)
fbdata.plz = geb.getPlz(fbdata)


-- Postleitzahl ermitteln
-- Tabs einsammeln und zusammenfügen
local plz = ""
local t =  
if #strasseHnr.strasse > 0 and not strasseHnr.strasse[1].suspekt then
fab.bildTab(fbdata) .. geb.kartenTab(fbdata) ..  p.datenTab(fbdata) .. -- Karten-Tab muss vor Tabs mit zeileGeoDaten() sein
-- Es wird angenommen, dass alle Gebäude die gleiche PLZ haben. Hausnummer muss nicht vorhanden sein
geb.datenTab(fbdata, {kindex=2, tabname="Gebäude"}) -- kindex => 2. Klasse/Kategorie
plz = geo.getPLZ(strasseHnr.strasse[1].name, strasseHnr.strasse[1].hausnummer[1])
t = fab.factbox_header_footer(t)
else
end


-- Bilder-Tab bauen
-- Sonstige gemeinsame Dinge anfügen (Klasse, Formular, Kategorien, Wartung, ...)
local bildTab = fab.bildTab(args["Bild"])
t = t .. fab.postprocess(fbdata)
if bildTab ~= "" then
-- Pre-Processing
bildTab = '<tab name = Bild>' .. bildTab .. '</tab>'
-- mw.logObject(t, "t")
end
t = fbdata.frame:preprocess(t)
return t
-- Karten-Tab bauen
local kartenTab
local pagename = wik.pagename()
if string.find(pagename, ";") ~= nil then
kartenTab = "Semikolon im Artikel-/Seitennamen für korrekte Kartendarstellung nicht erlaubt!"
else
kartenTab = geb.kartenTab(frame, args, noframe)
end
if kartenTab ~= "" then
kartenTab = '<tab name = Karte>' .. kartenTab .. '</tab>'
end
-- Gebäude-Tab bauen (immer vorhanden)
local gebaeudeTab = geb.datenTab{
frame = frame,
args = args,
klasse = "Gebäude",
kategorie = "Gebäude",
plz = plz,
strasseHnr = strasseHnr,
geo = true,
noframe = noframe
}
local gebaeudeTab = '<tab name = Gebäude>' .. gebaeudeTab .. '</tab>' -- immer vorhanden
 
-- Daten-Tab bauen (immer vorhanden)
local datenTab = p.datenTab{
args = args,
klasse = klasse,
kategorie = kategorie
}
local datenTab = '<tab name = Daten>' .. datenTab .. '</tab>' -- immer vorhanden
 
-- Tabs zusammenfügen
local box =
"<div class = factbox><tabs>" ..
bildTab ..
kartenTab ..
datenTab ..
gebaeudeTab ..
"</tabs></div>"
 
-- Sonstige gemeinsame Dinge anfügen (Formular, Kategorien, Wartung, ...)
box = box .. fab.common{
klasse = klasse,
kategorie = kategorie,
kategorie2 = kategorie2,
denkmalstatusbesteht = args["DenkmalstatusBesteht"],
bild = args["Bild"],
strasseHnr = strasseHnr,
positionscheck = true,
formular = formular
}
-- mw.log("box = " .. box)
 
-- Use preprocess to render the factbox and all contens at once
if not noframe then
box = frame:preprocess(box)
end
 
box = box .. com.returnStringCheck(box)
-- mw.log("box = " .. box)
return box
end
end


function p.datenTab(args)
function p.datenTab(fbdata)
-- mw.log("datenTab(args)")
-- mw.log("datenTab(fbdata)")
-- mw.logObject(args)
-- mw.logObject(fbdata.pargs)
local t = ""
local t = ""
t = t .. "<dl class = 'dataTable'>"
 
t = t .. fab.zeileKategorieSeite(args.klasse, args.kategorie)
-- Zusammenbau
t = t .. fab.zeile("Namensgeber", args.args["Namensgeber"])
t = t .. fab.zeileKategorieSeite(fbdata)
t = t .. fab.zeile("Konfession", args.args["Konfession"])
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Namensgeber"}
t = t .. fab.zeileDatum{attr_date="Weihedatum", date=args.args["Weihedatum"],attr_day="Weihetag",attr_year="Weihejahr"}
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Konfession", delimiter = ";"}
t = t .. fab.zeile("Besonderheit", args.args["Besonderheit"])
t = t .. fab.zeileDatum{fbdata = fbdata, attr_date = "Weihedatum", date = fbdata.pargs["Weihedatum"], attr_day = "Weihetag", attr_year = "Weihejahr"}
t = t .. "</dl>"
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Besonderheit", delimiter = ";"}
t = t .. fab.faktenboxSemantikBrowsen()
t = fab.table_header_footer(t)
t = t .. fab.zeileSemantikBrowsenAbfrage(fbdata)
-- Tab draus machen
t = fab.tab(t, "Daten")
-- mw.log("t = " .. t)
-- mw.log("t = " .. t)
     return t
     return t

Aktuelle Version vom 26. Dezember 2025, 16:48 Uhr

Seiten-Übersicht

Zur Klasse Kirche gehörende Seiten:
Hauptseite Unterseiten
Allgemein
Faktenbox Vorlagen
Formulare
Module
Abfrage Vorlagen


Formulare


Sonstige


Siehe auch


local p = {}

local com = require("Modul:Common")
local fab = require("Modul:Faktenbox")
local geb = require("Modul:Gebäude")

function p.Faktenbox(frame)
--	mw.log("Faktenbox(frame)")
--	mw.logObject(frame)

	-- Basis-Faktenbox-Daten (Klasse/Kategorie/Formular)
	local fbdata = fab.getFbdata(frame)
	fbdata.klasse = {"Kirche", "Gebäude"}
	fbdata.kategorie = {"Kirchen", "Gebäude"}
	fbdata.formular = "Kirche" -- ggf. "Kirche/Work"

	-- Straße/Hausnummer Formular-Eingaben analysieren, Postleitzahl ermitteln
	fbdata.strasse_hnr = geb.strasseHnrParser(fbdata)
	fbdata.plz = geb.getPlz(fbdata)

	-- Tabs einsammeln und zusammenfügen
	local t = 
		fab.bildTab(fbdata) .. geb.kartenTab(fbdata) ..  p.datenTab(fbdata) .. 	-- Karten-Tab muss vor Tabs mit zeileGeoDaten() sein
		geb.datenTab(fbdata, {kindex=2, tabname="Gebäude"})						-- kindex => 2. Klasse/Kategorie
	t = fab.factbox_header_footer(t)

	-- Sonstige gemeinsame Dinge anfügen (Klasse, Formular, Kategorien, Wartung, ...)
	t = t .. fab.postprocess(fbdata)
	-- Pre-Processing
--	mw.logObject(t, "t")
	t = fbdata.frame:preprocess(t)
	return t
end

function p.datenTab(fbdata)
--	mw.log("datenTab(fbdata)")
--	mw.logObject(fbdata.pargs)
	local t = ""

	-- Zusammenbau
	t = t .. fab.zeileKategorieSeite(fbdata)
	t = t .. fab.zeile{fbdata = fbdata,			attr_name = "Namensgeber"}
	t = t .. fab.zeile{fbdata = fbdata,			attr_name = "Konfession",		delimiter = ";"}
	t = t .. fab.zeileDatum{fbdata = fbdata,	attr_date = "Weihedatum",		date = fbdata.pargs["Weihedatum"], attr_day = "Weihetag", attr_year = "Weihejahr"}
	t = t .. fab.zeile{fbdata = fbdata,			attr_name = "Besonderheit",		delimiter = ";"}
	t = fab.table_header_footer(t)
	t = t .. fab.zeileSemantikBrowsenAbfrage(fbdata)
	
	-- Tab draus machen
	t = fab.tab(t, "Daten")
--	mw.log("t = " .. t)
    return t
end

return p