Modul:Kirche: Unterschied zwischen den Versionen
Aus FürthWiki
Keine Bearbeitungszusammenfassung |
(switch zu neue-Lua-Faktenbox) |
||
| Zeile 1: | Zeile 1: | ||
local p = {} --p stands for package | local p = {} --p stands for package | ||
local | local com = require("Modul:Common") | ||
local | local dev = require("Modul:Development") | ||
local geo = require(" | 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 geb = require("Modul:Gebäude") | |||
local formular = "Kirche" -- ggf. "Kirche/Work" | |||
function p.Faktenbox(frame) | function p.Faktenbox(frame) | ||
local args = | -- mw.log("Faktenbox(frame)") | ||
-- mw.logObject(frame) | |||
local args, noframe = dev.GetParentArgs(frame) | |||
-- Klasse/Kategorie setzen | |||
local klasse = "Kirche" | |||
local kategorie = kat.mehrzahl(klasse) | |||
mw.smw.set("KlassenName = " .. klasse) | |||
-- Straße/Hausnummer Formular-Eingaben analysieren | |||
local strasseHnr = geb.strasseHnrParser(args) | |||
-- Postleitzahl ermitteln | |||
local plz = "" | |||
if #strasseHnr.strasse > 0 and not strasseHnr.strasse[1].suspekt then | |||
-- Es wird angenommen, dass alle Gebäude die gleiche PLZ haben. Hausnummer muss nicht vorhanden sein | |||
plz = geo.getPLZ(strasseHnr.strasse[1].name, strasseHnr.strasse[1].hausnummer[1]) | |||
else | |||
end | |||
-- Bilder-Tab bauen | |||
local bildTab = fab.bildTab(args["Bild"]) | |||
if bildTab ~= "" then | |||
bildTab = '<tab name = Bild>' .. bildTab .. '</tab>' | |||
end | |||
local | -- Karten-Tab bauen | ||
local kartenTab | |||
if | 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 | end | ||
if kartenTab ~= "" then | |||
kartenTab = '<tab name = Karte>' .. kartenTab .. '</tab>' | |||
end | end | ||
-- | -- Gebäude-Tab bauen (immer vorhanden) | ||
local | local gebaeudeTab = geb.datenTab{ | ||
frame = frame, | |||
args = args, | |||
kategorie = "Gebäude", | |||
plz = plz, | |||
strasseHnr = strasseHnr, | |||
local | geo = true, | ||
noframe = noframe | |||
} | |||
-- | local gebaeudeTab = '<tab name = Gebäude>' .. gebaeudeTab .. '</tab>' -- immer vorhanden | ||
-- Daten-Tab bauen (immer vorhanden) | |||
local datenTab = p.datenTab{ | |||
local | args = args, | ||
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, | |||
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 | |||
end | box = frame:preprocess(box) | ||
end | |||
box = box .. com.returnStringCheck(box) | |||
-- mw.log("box = " .. box) | |||
return box | |||
end | end | ||
-- | function p.datenTab(args) | ||
-- mw.log("datenTab(args)") | |||
-- mw.logObject(args) | |||
local t = "" | |||
t = t .. "<dl class = 'dataTable'>" | |||
t = t .. fab.zeileKategorieSeite(args.kategorie, args.args["Ehemals"]) | |||
t = t .. fab.zeile("Namensgeber", args.args["Namensgeber"]) | |||
t = t .. fab.zeile("Konfession", args.args["Konfession"]) | |||
t = t .. fab.zeileDatum{attr_date="Weihedatum", date=args.args["Weihedatum"],attr_day="Weihetag",attr_year="Weihejahr"} | |||
t = t .. fab.zeile("Besonderheit", args.args["Besonderheit"]) | |||
t = t .. "</dl>" | |||
t = t .. fab.faktenboxSemantikBrowsen() | |||
-- mw.log("t = " .. t) | |||
return t | |||
end | end | ||
return p | return p | ||
Version vom 11. Oktober 2025, 16:56 Uhr
Seiten-Übersicht
| Hauptseite | Unterseiten | ||
|---|---|---|---|
| Allgemein | |||
| Faktenbox | Vorlagen | ||
| Formulare |
|
||
| Module | |||
| Abfrage | Vorlagen |
| |
| Formulare |
| ||
| Sonstige | |||
Siehe auch
local p = {} --p stands for package
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 geb = require("Modul:Gebäude")
local formular = "Kirche" -- ggf. "Kirche/Work"
function p.Faktenbox(frame)
-- mw.log("Faktenbox(frame)")
-- mw.logObject(frame)
local args, noframe = dev.GetParentArgs(frame)
-- Klasse/Kategorie setzen
local klasse = "Kirche"
local kategorie = kat.mehrzahl(klasse)
mw.smw.set("KlassenName = " .. klasse)
-- Straße/Hausnummer Formular-Eingaben analysieren
local strasseHnr = geb.strasseHnrParser(args)
-- Postleitzahl ermitteln
local plz = ""
if #strasseHnr.strasse > 0 and not strasseHnr.strasse[1].suspekt then
-- Es wird angenommen, dass alle Gebäude die gleiche PLZ haben. Hausnummer muss nicht vorhanden sein
plz = geo.getPLZ(strasseHnr.strasse[1].name, strasseHnr.strasse[1].hausnummer[1])
else
end
-- Bilder-Tab bauen
local bildTab = fab.bildTab(args["Bild"])
if bildTab ~= "" then
bildTab = '<tab name = Bild>' .. bildTab .. '</tab>'
end
-- 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,
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,
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,
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
function p.datenTab(args)
-- mw.log("datenTab(args)")
-- mw.logObject(args)
local t = ""
t = t .. "<dl class = 'dataTable'>"
t = t .. fab.zeileKategorieSeite(args.kategorie, args.args["Ehemals"])
t = t .. fab.zeile("Namensgeber", args.args["Namensgeber"])
t = t .. fab.zeile("Konfession", args.args["Konfession"])
t = t .. fab.zeileDatum{attr_date="Weihedatum", date=args.args["Weihedatum"],attr_day="Weihetag",attr_year="Weihejahr"}
t = t .. fab.zeile("Besonderheit", args.args["Besonderheit"])
t = t .. "</dl>"
t = t .. fab.faktenboxSemantikBrowsen()
-- mw.log("t = " .. t)
return t
end
return p