Wikipedia:Lua/Modul/Vorlage:Infobox Sendeanlage/de
Vorlagenprogrammierung | Diskussionen | Lua | Test | Unterseiten | ||
Modul | Deutsch
|
Modul: | Dokumentation |
Das Modul:Vorlage:Infobox Sendeanlage
dient in erster Linie zum Anzeigen der namengebenden Vorlage:Infobox Sendeanlage.
Funktionen für Vorlagen
[Quelltext bearbeiten]- Infobox
- Diese Funktion dient zur Anzeige der Infobox. Sie benötigt keine weiteren Parameter. Zurückgegeben wird die Infobox mit dazugehörigen Kategorien.
- Nebenbox
- Diese Funktion zeigt ebenfalls die Infobox, allerdings ohne die Kategorie-Sortierung und der Lagekarte. Die Koordinaten werden in einer Zeile der Infobox angezeigt anstatt im Artikelkopf.
- Weiterleitung
- Diese Funktion erzeugt den Link zu den Koordinaten mittels der Vorlage:Coordinate. Des Weiteren erfolgt die Kategorie-Sortierung entsprechend derer der Infobox.
- Dokumentation
- Bereitstellung von Informationen zur Dokumentation der Vorlage, insbesondere in der Vorlagen-Dokumentations-Unterseite.
- kein 1. Parameter
- Bereitstellung von Daten in der Vorlagen-Dokumentations-Unterseite: die Vorlage:TemplateData, einer Kopiervorlage und der Wiki-Tabelle im Kapitel „Parameter-Details“.
- Parameter
JSON
- Angabe der Werte für die Verarbeitung in der Wiki-Vorlage:TemplateData
- Im Unterschied zu dem in der „Vorlage:TemplateData“ verwendeten Parameter enthält dieser den für die Grammatik benötigten Platzhalter
$1
,$2
,$3
,$4
und$MZ
. Diese werden bei der weiteren Bearbeitung durch das Modul ersetzt; siehe hierzu die VariableErsatz
und die Funktion „DokuVorlage“.
- Parameter
- Zurückgegeben wird die komplette Dokumentation für den Parameter
JSON
der „Vorlage:TemplateData“, eine Kopiervorlage sowie eine komplette Wiki-Tabelle mit den verwendeten Werten der Parameter-Details. - 1. Parameter = „DokuDaten“
- Bereitstellung einer Wiki-Tabelle mit den Parametern, die für jeden Datensatz („NAME“, „VERW“, „T_HOCH_GES“, usw.) generiert werden.
- Um Informationen in die Spalte „Bemerkung“ zu schreiben werden als Parameter dieselben wie diejenigen des Datensatzes verwendet.
Beschreibung der Datensätze
[Quelltext bearbeiten]Parameter der Datensätze in den Variablen „Daten“ und „DN“
[Quelltext bearbeiten]Parameter | Bemerkung | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AnzLabel
|
mithilfe der Parameter „CAT_TYP“ der Vorlage und „AnzSplit“ wird aus der Tabelle „Label“ wird der benötigte anzuzeigende Wert als Zeichenfolge abgelegt. | ||||||||||||||||||
AnzSplit
|
In diesem Parameter ist die Anzahl der gesplitteten Werte aus dem Parameter „WertSplit“ als Zahl abgelegt | ||||||||||||||||||
BauTyp
|
In Verbindung mit dem Parameter „CAT_TYP“ der Vorlage wird der Wert aus dem Parameter „Typ“ übernommen. | ||||||||||||||||||
Einheit
|
| ||||||||||||||||||
Label
|
| ||||||||||||||||||
Name
|
Name des Parameters. Mit diesem können alle Werte innerhalb der Variable „DN“ angesprochen werden. | ||||||||||||||||||
Standard
|
| ||||||||||||||||||
Typ
|
| ||||||||||||||||||
WertSplit
|
Sofern Daten aus Parametern der Vorlage gesplittet werden, werden die einzelnen Werte dort der Reihe nach als Tabelle abgelegt. | ||||||||||||||||||
WertSplitLink
|
Parallel zu den Daten in „WertSplit“ werden als Tabelle die Daten verlinkt und wikifiziert abgelegt. | ||||||||||||||||||
WertZeile
|
Ausgabewert mit Formatierung, so wie er in der Infobox angezeigt werden soll. | ||||||||||||||||||
ausklappen
|
bei Feldern, die ausgeklappt werden können, wird innerhalb der Verarbeitung im Modul ein Text festgelegt und abgelegt. | ||||||||||||||||||
Parameter kann im Modul:Vorlage:Infobox Sendeanlage/Label angepasst werden. | |||||||||||||||||||
Parameter wird innerhalb des Moduls generiert. | |||||||||||||||||||
Status nicht definiert |
Beschreibung der internen Funktionen
[Quelltext bearbeiten]Basisparameter
[Quelltext bearbeiten]- ModulStamm
- Stammverzeichnis des Moduls
- SN
- Seitenname des Artikels
- SR
- Basis-Seitenname des Artikels
- NSP
- Namensraum des Artikels als Ganzzahl
Funktion TYP
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bestimmt den Bauwerkstyp, z.B. Turm für Sendeturm. Bestimmt wird der Typ, damit dieser in den Funktionen für Vorlagen in der Variablen
DSZusatz
alsTyp
abgelegt werden kann.
- Übergabewert
-
Alle
: als Tabelle, in dem die möglichen Bauwerkstypen enthalten sind. Normalerweise ist dieLabel.Bezeichner
aus der Funktion „Bezeichner“.DatenWL
: als Zeichenfolge für die Übernahme des sich aus einer anderen Wiki-Seite ergebenden Parameter (betrifft nur die Funktion „Weiterleitung“)
- Funktionsweise
- In der Variablen
Ausgabe
wird der Wert „Anlage“ als Standard abgelegt. Der ParameterCAT_TYP
wird aus der Vorlage in die Variableargs
geladen. Nur wenn im ÜbergabewertAlle
der Parameterargs
(z.B.Alle["Turm"] = "Sendeturm"
) enthalten ist, wird als Rückgabewert dieser Bauwerkstyp, ansonsten der Standardwert übergeben.
- Rückgabewert
- Bauwerkstyp als Zeichenfolge, z. B.
Turm
.
Funktion CCN
[Quelltext bearbeiten]- Verwendung
- Diese Funktion ordnet die Seitennamen und Objektbezeichnung aus der Vorlage. Diese werden zur Kategorisierung in der Funktion „KatFinder“ benötigt.
- Übergabewerte
-
SN
als Zeichenfolge: SeitennameDatenWL
als Tabelle: Funktion „DatenWeiterleitung“
- Funktionsweise
- In den Variablen
ZZ
undYY
wird der jeweilige Parameter aus der „Vorlage:Infobox Sendeanlage“ zwischenabgelegt. - Die Variablen
NCC.CSTADT
undNCC.DSTADT
werden gesplittet und als Tabelle abgelegt. Das Trennungszeichen ist der Schrägstrich „/“. Beispiel:
| CAT_STADT = im Bezirk Mitte/Berlin-Mitte - wird zu NCC.CSTADT[1] = Bezirk Mitte NCC.DSTADT[1] = im Bezirk Mitte NCC.CSTADT[2] = Berlin-Mitte NCC.DSTADT[2] = in Berlin-Mitte
- Die anderen Variablen ist die Sortierungsreihenfolge festgelegt und wird nach folgendem Schema abgelegt:
NCC.CNAME
, wenn nichtNCC.NNAME
, wenn nichtSN
- Rückgabewert
NCC
als Tabelle mit den Variablen:NCC.CSTADT
als TabelleNCC.DSTADT
als TabelleNCC.CNAME
als ZeichenfolgeNCC.NNAME
als Zeichenfolge
Funktion DS_Aufbereitung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet den kompletten Datensatz für die Infobox auf.
- Übergabewerte
-
DSZusatz
als Tabelle (aus Funktionen für Vorlagen)Daten
als Tabelle (aus Funktion „Label“)frame
als Tabelle
- Funktionsweise
-
- Einzeldurchgang der Datensätze
- In einer Schleife wird jeder Parameter aus der „Vorlage:Infobox Sendeanlage“ aufbereitet. Dazu wird die Funktion „AufarbStand“ ausgeführt (abgelegt im Übergabewert
DSZusatz
). Aus dieser Funktion werden die VariablenDN
undKategorien
generiert. - Spezielle Berechnungen
- Bei bestimmten Parametern werden gesonderte Berechnungen durchgeführt. Die Parameter sind in der Variablen
DSMA
aufgeführt und werden mittels Schleife über die Funktion „DSIB“ einzeln abgerufen. - Sofern die Bau- und Abrissdekade als Parameter
BAU_DEKADE
undABR_DEKADE
definiert sind, werden entsprechende Kategorien hinzugefügt. - Die gleiche Aufspielung findet bei der Kategorie des Gastronomiebetrieb statt, wenn
VERW = "Restaurant"
,VERW = "Drehrestaurant"
sowieABRISS
oderABR_DEKADE
als Wert vorhanden ist.
- Rückgabewert
DSRueck
als Tabelle mit den Variablen:Daten
als TabelleDN
als TabelleKategorien
als Tabelle
Funktion Wartung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur Auswertung der Wartungsunterseiten des Moduls und der Wiki-Vorlage.
- Übergabewerte
-
DSZusatz
als Tabelle (aus Funktionen für Vorlagen)Daten
als Tabelle (aus Funktion „DS_Aufbereitung“)DN
als Tabelle (aus Funktion „DS_Aufbereitung“)Kategorien
als Tabelle (aus Funktion „DS_Aufbereitung“)frame
als Tabelle
- Funktionsweise
- In die Variable
Wartung
werden die Funktion „WartungLua“ und die Funktion „WartungWiki“ eingelesen. In diesen befinden sich soweit vorgegeben, die verborgenen Links zur Wartungsseite Infobox Sendeanlage/Wartung. in der VariableWartung.alle
werden diese zusammengestellt. In die VariableWartung.Text
wird dann diese Zusammenstellung nur übergeben, wenn sich die Seite im Artikelnamensraum befindet.
- Rückgabewert
Wartung.Text
als Zeichenfolge.
Funktion KatFinder
[Quelltext bearbeiten]- Verwendung
- Diese Funktion selektiert die Kategorien, die dynamisch je nach Region oder Bauwerkstyp vorgegeben sind und bereitet diese für die Ausgabe vor.
- Übergabewerte
-
DSZusatz
als Tabelle (aus Funktionen für Vorlagen)Daten
als Tabelle (aus Funktion „DS_Aufbereitung“)DN
als Tabelle (aus Funktion „DS_Aufbereitung“)Kategorien
als Tabelle (aus Funktion „DS_Aufbereitung“)frame
als Tabelle
- Funktionsweise
-
- Grundsatz
- Da zum Auffinden einer existierenden Kategorie die Parser-Funktion
ifexist
verwendet wird, wird dieser Suchaufruf auf ein Minimum reduziert. Schema
LG0 = Gesamtlauf der Kategorien | --> LG1 = nach Gruppen (Kategorienblöcke), z.B. [1] = „Sendeturm; Sendeanlage“; [2] = „Sendeturm; Turm; Bauwerk“ | --> LG2 = Kategorienblöcke, z.B. [1] = „Sendeturm“ [2] = „Turm“ [3] = „Bauwerk“ | --> LG3 = Kategorien nach Region, | |+ „Sendeturm in Deutschland“ (vorhanden) |+ „Sendeturm in Bayern“ (vorhanden) |+ „Sendeturm in München“ (nicht vorhanden) | |+ „Turm in München“ (vorhanden) |+ „Turm in Münchner Stadtteil“ (nicht vorhanden) | |+ „Bauwerk in Münchner Stadtteil“ (nicht vorhanden)
- Funktion RKAT
- In der Tabelle
RegKAT
werden die Regionsbezeichnung zurückgegeben. Genutzt wird hierzu die Funktion „GeoVERW“. In den ersten drei Variablen sind die Regionen nach Funktion „DSIB.Regionen“, danach folgen die Werte aus der Liste nachCSTADT
und zum Schluss einen Abschlusswert. Beispiel:
[1] = { "Sendeanlage in Italien", "Italien", Art = "REGION" } [2] = { "Sendeanlage in Trentino-Südtirol", "Trentino-Südtirol", Art = "REGION" } [3] = { "Sendeanlage in Südtirol", "Südtirol", Art = "REGION" } [4] = { "Sendeanlage in Bozen", "Bozen", Art = "CSTADT" } [5] = { "nichts", "nicht", Art = "nicht" }
- Durchlaufwerte (LG0) bestimmen
- Im ersten Wert der Variablen
LaufGeo
wird als Tabelle der Inhalt vonGeo[Typ]
wenn nicht vorhanden vonGeo[1]
abgelegt - Die darauffolgenden Werte entstammen der Variablen
Kategorien
, jeweils mit der BedingungGeoN
oderGeoC
. - Durchlauf nach Geo-Kaskade nach Bauwerkstyp
-
- Schleife (LG0): Kategorien der Matrix, danach Kategorien aus Liste, z.B. „VERW“
- Schleife (LG1): nach Gruppen die Kategorienblöcke
- Schleife (LG2): Kategorienblöcke (Am Anfang dieser Schleife wird die Regionen-Kategorie „RegKAT“ jeweils neu berechnet)
- Schleife (LG3): Einzelkategorie (Der Startwert dieser Schleife erhöht sich bei Vorhandensein der ‚Vorgängerkategorie‘)
- Um ein Hinzufügen einer bereits vorhandenen Kategorie zu vermeiden, wird in „LG3“ der Bauwerkstyp
DopplerT
und der RegionstypDopplerR
als Zeichenfolge abgelegt. - Die Zeichenfolge
ZY
enthält die jeweils letzte vorhandene Kategorie, die ZeichenfolgeZZ
enthält die aktuelle Kategorie (oder0
) - Durch die Zuordnung
ZY = nil
wird verhindert, dass weitere Kategorien innerhalb eines Bauwerktyps abgelegt werden. - In
GeoKAT
wird abgelegt:- Name der Kategorie
- Sortierungstyp der Kategorie (
GeoN
oderGeoC
) - Position innerhalb der Aufzählung
KATmax
enthält als Zahl die maximale Expansionstiefe der Kategorien.- Am Ende der Schleife „LG1“ werden die Regionstypen z.B. „Deutschland“ zurückgesetzt, damit der Durchlauf gem. wie o.g. durchlaufen werden kann.
- bei abgegangenem Bauwerk und Gastronomiebetrieb Doppler entfernen
- Die Entfernung erfolgt durch Anhebung des Positionswertes der „Bauwerk“-und der „Gastronomiebetrieb“-Kategorie über den Maximalwert der Expansionstiefe. Dadurch wird diese Kategorie bei der anschließenden Sortierung nicht mehr berücksichtigt.
- Rest-Kategorien finden
-
- Schleife: Durch
Kategorien
- Schleife: Durch die Kategorien (
Doppler
), die schon verarbeitet wurden
- Schleife: Durch
- Zu den
Kategorien
hinzugefügt werden nur diejenigen, die noch nicht vorhanden sindistschonda = false
. Dem dritten Wert im jeweiligen Datensatz wird die Zahl0
zugeordnet. Sofern es sich um eine versteckte Kategorie handelt (
), ändert sich die Zahl aufistversteckt
-1
. - Kategorien sortieren
- Zum Sortieren der Kategorien nach geografischem Ort („Stadt“ → „Bundesland“ → „Staat“) läuft der Zähler
KN
dekrementierend (rückwärts) durch die VariableGeoKAT
, beginnend bei DES maximalen ExpansionstiefeKATmax
. Sofern der Zähler dem 3. Wert des jeweiligen Datensatzes inGeoKAT
entspricht, wird der Datensatz in die VariableKategorien
übernommen.
- Rückgabewert
{ Kategorien, KATText }
je als Tabelle.
Funktion Zusatz
[Quelltext bearbeiten]- Verwendung
- Diese Funktion stellt eine Variable
DSZusatz
als Tabelle zusammen, die als Basiswerte zur Verarbeitung aller Funktionen inp
gilt
- Übergabewerte
-
frame
als TabelleDatenWL
als Tabelle: Funktion „DatenWeiterleitung“
- Funktionsweise
Es wird eine Variable als Tabelle generiert mit folgenden Parametern:
Parameter | Beschreibung |
---|---|
Aufzaehlung
|
Variable als Tabelle der strukturierten Aufzählung. Sie ist das Ergebnis aus der Funktion „Aufzaehlung“. |
Bezeichner
|
Variable enthält als Tabelle die Bezeichnungen der Bauwerkstypen, z.B. „Turm“ = „Sendeturm“. Sie ist das Ergebnis aus der Funktion „Bezeichner“. |
CNAME
|
Zeichenfolge aus dem Parameter CAT_NAME der „Vorlage:Infobox Sendeanlage“. Sie ist der dritte Wert aus dem Ergebnis der Funktion „CCN“.
|
CSTADT
|
Tabelle aus dem Parameter CAT_STADT der „Vorlage:Infobox Sendeanlage“ ohne den Vorstellwörtern „in“, „im“ oder „in der“. Das Trennzeichen ist der Schrägstrich „/“. Sie ist der erste Wert aus dem Ergebnis der Funktion „CCN“.
|
DSTADT
|
Tabelle aus dem Parameter CAT_STADT der „Vorlage:Infobox Sendeanlage“ mit den Vorstellwörtern „in“, „im“ oder „in der“. Das Trennzeichen ist der Schrägstrich „/“. Sie ist der zweite Wert aus dem Ergebnis der Funktion „CCN“.
|
DatenWL
|
Variable als Tabelle für Daten, die aus dem ZIEL (Zielseite) in der Funktion „Weiterleitung“ generiert werden.
|
Geo
|
Variable als Tabelle der Kategoriefolgen, je nach Bauwerkstyp. Sie ist das Ergebnis aus der Funktion „Geo“. |
Layout
|
Variable als Tabelle, indem die Art des Aufbaus der Infobox beschrieben ist. Sie ist das Ergebnis aus der Funktion „Layout“. |
ModulStamm
|
Variable als Zeichenfolge. Sie enthält das Stammverzeichnis des Modulnamen. |
NNAME
|
Zeichenfolge aus dem Parameter NAME der „Vorlage:Infobox Sendeanlage“ oder dem Seitenname des Artikels. Sie ist der vierte Wert aus dem Ergebnis der Funktion „CCN“.
|
NSP
|
Namensraum als Zahl. |
OPK
|
Variable als Tabelle mit den Ersatzkarten für POSKARTE. Sie ist das Ergebnis aus der Funktion „OPK“. |
SN
|
Zeichenfolge mit dem Namen des Artikels |
SR
|
Zeichenfolge mit dem Stammverzeichnis des Namens des Artikels |
SU
|
Zeichenfolge mit dem Unterseiten-Namen des Artikels |
Tabelle
|
Variable als Tabelle mit der Darstellungsart der Zeilen innerhalb der Infobox. Sie ist das Ergebnis aus der Funktion „Tabelle“. |
- Rückgabewert
DSZusatz
je als Tabelle.
Beschreibung der Funktionen für Vorlagen
[Quelltext bearbeiten]Funktion Infobox
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur Darstellung der Infobox.
- Funktionsweise
-
- Eingangsvariablen
- Zunächst werden ausgelagerte Module und Funktionen zugeladen:
- Funktion „CCN“
- Untermodul Auflistung mit den Variablen
- Untermodul Layout
- Untermodul Aufbereitung mit der Variable
- Damit bei den nachfolgenden Funktionsaufrufen eine einheitliche Informationsübergabe stattfinden kann, werden in der Variable
DSZusatz
mehrere Parameter als Tabelle abgelegt. - Es erfolgt der Funktionsaufruf „DS_Aufbereitung“ und der daraus generierten Variablen:
Daten
als TabelleDN
als TabelleKategorien
als Tabelle
- Datensätze aufbereiten
- Daten und Kategorien werden in der Funktion „DS_Aufbereitung“ bereitgestellt, aufbereitet und in den Variablen
Daten
,DN
undKategorien
abgelegt. - Über die Funktion „KatFinder“ erfolgt eine weitere Aufbereitung der Kategorien. Das Ergebnis wird in der Variable
Kategorien
abgelegt. - Datensätze anzeigen
- Über die Funktion „InfoboxDarstellung“ wird die Darstellung der Infobox berechnet und zur Variable
IB
hinzugefügt. - Die Zuweisungen von Verlinkungen zur Wartungsseite der Vorlage werden in der Funktion „Wartung“ berechnet und und zur Variable
IB
hinzugefügt. - Die Funktion „KategorieDarstellung“ berechnet die Darstellung der Kategorien und fügt diese zur Variablen
IB
hinzu.
- Rückgabewert
- komplette Infobox mit Kategorien in der Variable
IB
als Zeichenfolge.
Funktion Nebenbox
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur Darstellung der Infobox, wenn diese eine Nebenbox darstellt.
- Funktionsweise
- Die Funktionsweise gleicht der der Funktion „Infobox“. Im Unterschied dazu wird kein Bilderwunsch bei leerem Parameter
BILD
ausgegeben und die Darstellung der Kategorien ist unterdrückt.
- Rückgabewert
- Infobox ohne Kategorien in der Variable
IB
als Zeichenfolge.
Funktion Weiterleitung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur einheitlichen Kategorisierung und Geofizierung von Weiterleitungen.
- Funktionsweise
- Zunächst wird in der Funktion „DatenWeiterleitung“ die Ziel-Seite ausgewertet und ggf. die Parameter für die weitere Modul-Abarbeitung gewonnen und in der Variable
DSZusatz.DatenWL
abgelet. Die weiteeren Schritte gleichen derer der Funktion „Infobox“. Zur Anzeige kommt aber nicht die Infobox, sondern die in der VariablenDN.KoordKarte.WertZeile
hinterlegten Geokoordinaten mit Hilfe der Wiki-Vorlage:Coordinate.
- Rückgabewert
- Kategorien und Geokoordinaten in der Variable
IB
als Zeichenfolge.
Funktion Dokumentation
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zum Auslesen und Darstellung der Dokumentation der Vorlage.
- Funktionsweise
- In der Variable
Dokumentation
wird der erste Wert aus der Vorlage abgelegt. Dieser dient gleichzeitig als Ziel für die Zuladung der Unterfunktion für die verschiedenen Tabellen. Daher ist auch ein Standardwert definiert. - Es erfolgt das Zuladen der Standardparameter und zusätzlicher Parameter je nach der Variable
Dokumentation
. - Abschließend werden die Unterfunktionen geladen und zurückgegeben.
- Rückgabewert
- je nach erstem Parameter ein Teilaspekt der Dokumentation (meist als Wiki-Tabelle) der „Vorlage:Infobox Sendeanlage“ als Variable
Doku
als Zeichenfolge.
Untermodule
[Quelltext bearbeiten]In diesem Untermodul sind die Datensätze Vorlage und weitere Datensätze zur Kategorisierung abgelegt.
Funktion Label
[Quelltext bearbeiten]In dieser Funktion sind die Datensätze für die Parameter der „Vorlage:Infobox Sendeanlage“ abgelegt.
Funktion Geo
[Quelltext bearbeiten]Für die Kategorisierung nach Regionen sind die Werte hier abgelegt.
Funktion Bezeichner
[Quelltext bearbeiten]Mittels des Bezeichners wird bestimmt, welche Werte für den Parameter CAT_TYP
aus der „Vorlage:Infobox Sendeanlage“ zugelassen sind. In der Liste sind die Bezeichnungen, gem. CAT_TYP
verzeichnet, in den Parametern sind die Bezeichnungen hinterlegt. Üblicherweise wird der Bauwerkstyp in der Funktion „TYP“ festgelegt.
Funktion Tabelle
[Quelltext bearbeiten]Mittels dieser Funktion wird die Darstellungsart der einzelnen Zeilen der Infobox festgelegt. Die Parameter sind gleich der Typ-Parameter aus der Funktion „Label“. Im Haupt-Modul wird mittels des Parameter-Namens eine Nummer zugeordnet, die dann der Nummer in der Liste dieser Funktion entspricht.
Funktion OPK
[Quelltext bearbeiten]Diese Funktion stellt Ersatzkarten bereit für Funktionskarten, die nicht über die Wiki-Vorlage:Obige Karte bereitgestellt werden können. Der jeweils erste Wert bezeichnet den Vorlagen-Kartennamen, der ggf. zweite Wert die jeweilige Ersatzkarte.
Ein Untermodul für die Auflistungen innerhalb der Infobox.
Funktion Aufzaehlung
[Quelltext bearbeiten]Sofern eine Verlinkung und strukturierte Darstellung der Parameter aus der „Vorlage:Infobox Sendeanlage“ erfolgt, sind hier die Daten hinterlegt.
Funktion Aufzaehler
[Quelltext bearbeiten]Funktion zur Ablage der Trennzeichen zwischen den Aufzählungen. Die Parameter sind die der Typ-Werte des Untermoduls „Label“, Funktion „Label“.
Mittels dieses Untermoduls werden die Parameter-Daten der Vorlage aufbereitet.
Funktionen innerhalb des Untermoduls
[Quelltext bearbeiten]Funktion REG
[Quelltext bearbeiten]- Verwendung
- Diese Funktion ruft über die Wiki-Vorlage:Info ISO-3166-2 je nach Region Informationen ab.
- Übergabewerte
-
Level
: als Zeichenfolge die AdministrationsebeneInfo
: als Zeichenfolge die gewünschte InformationDatenWL
: als Tabelle für die Übernahme des sich aus einer anderen Wiki-Seite ergebenden Parameter (betrifft nur die Funktion „Weiterleitung“)
Wert | charakterisiert | Beispiel IT-BZ |
---|---|---|
O |
Administrationsebene 0 | IT (Italien) |
I |
Administrationsebene 1 | IT-32 (Trentino-Südtirol) |
II |
Administrationsebene 2 | IT-BZ (Südtirol) |
Wert | ruft ab | Beispiel IT-BZ |
---|---|---|
continent |
Kontinent | Europa |
level |
Administrationslevel | 2 |
acronym |
Code ohne Ländercode | BZ |
admtype |
Typ der Administration | Provinz |
admname |
Autonome Provinz Bozen | |
name |
Kurzname als Anzeigename | Südtirol |
lemma |
zugehöriger Wiki-Artikel | Südtirol |
map |
Positionskarte | Italien Südtirol |
flag |
Flagge | |
in |
Ortsangabe |
- Funktionsweise
- In der Variable
VR
wird als Tabelle die Argumente der Wiki-Vorlage abgelegt. Am Beispiel von Vorlage:Info ISO-3166-2:IT-BZ:
{{Info ISO-3166-2|code={{{REGION-ISO|}}}|name}}
{{Info ISO-3166-2|code={{Info ISO-3166-2|code={{{REGION-ISO|}}}|upper}}|name}}
{{Info ISO-3166-2|code={{Info ISO-3166-2|code={{{REGION-ISO|}}}|top}}|name}}
{{Info ISO-3166-2|code=IT-BZ|name}}
{{Info ISO-3166-2|code={{Info ISO-3166-2|code=IT-BZ|upper}}|name}}
{{Info ISO-3166-2|code={{Info ISO-3166-2|code=IT-BZ|top}}|name}}
{{Info ISO-3166-2|code=IT-BZ|name}}
{{Info ISO-3166-2|code=IT-32|name}}
{{Info ISO-3166-2|code=IT|name}}
Italien
Trentino-Südtirol
Südtirol
- Rückgabewert
- Die gewünschte Information als Zeichenkette.
Funktion ZDS
[Quelltext bearbeiten]- Verwendung
- Diese Funktion zählt bei den Zusammenfassungen DSIB.IBTBau, DSIB.IBTHoch und DSIB.IBSHoch die vorhandenen Parameter.
- Übergabewerte
-
ZG
: Einzelnen Werte als TabelleZmax
: Maximale Anzahl an Eigenschaften, bei denen eine Zusammenfassung noch nicht erfolgen soll. (als Zahl)
- Funktionsweise
- Es wird eine Schleife durch
ZG
durchlaufen. Mittelsmax
wird gezählt, wenn in den WertenZG
mindestens ein zweiter Wert vorhanden ist.
- Rückgabewert
- Ist der Maximalwert größer als die Vorgabe, ist der Rückgabewert Wahr, ansonsten Unwahr.
Funktionen für das Hauptmodul
[Quelltext bearbeiten]Funktion Fehler
[Quelltext bearbeiten]- Verwendung
- Diese Funktion gibt eine formatierte Fehlermeldung zurück.
- Übergabewerte
-
Meldung
: Anzuzeigende Fehlermeldung als Zeichenfolge
- Funktionsweise
- Die Anzeige wird über
mw.html.create( "div" )
formatiert, der Text mit:wikitext
eingefügt.
Funktion Rahmen
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet die Parameter und Werte zur Darstellung in einer Wiki-Tabelle auf.
- Übergabewerte
-
TXT
: Anzuzeigender Text als TabelleUe
: Überschrift als Zeichenfolge
- Funktionsweise
- Die Variable
LA
definiert den Kopf der Wiki-Tabelle, wobei derLA[1]
-Wert die Tabelle ohne Überschrift, derLA[2]
mit Überschrift zuweist. - Nach Zuweisung der Des Tabellenkopfes mittels
Un
werden die Zeilen der Tabelle über eine Schleife aus dem TextTXT
ausgelesen.
- Rückgabewert
Zur Anzeige (mit Formatierung) vorgesehene Wiki-Tabelle.
Funktion AufarbStand
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet die Werte des Datensatzes
Daten
nach einheitlichen Kriterien auf. Es handelt sich jeweils um den aktuellen Einzeldatensatz aus dem Hauptmodul
- Übergabewerte
Datensatz
,DSZusatz
,Kategorien
undframe
.
- Funktionsweise
- Diese Funktion beinhaltet mehrere Teilbereiche.
- Artikel-Parameter in Daten einsortieren und splitten
- Zunächst werden die verschiedenen Möglichkeiten des Dateneingangs eingelesen und in folgender Reihenfolge in
WertZeile
abgelegt.- Parameter aus der „Vorlage:Infobox Sendeanlage“ (über
mw.getCurrentFrame():getParent().args[DS.Name]
), wenn nicht vorhanden, - Parameter aus dem Modulaufruf (über
frame.args[DS.Name]
), wenn nicht vorhanden, - Parameter aus dem Aufruf aus einer Zielseite (über
DSZusatz.DatenWL[DS.Name]
– nur bei „Weiterleitung“), wenn nicht vorhanden, - Standardwert des Bauwerktyps (über
DS.Standard[DSZusatz.Typ]
), wenn nicht vorhanden, - allgemeiner Standardwert (über
DS.Standard[1]
), wenn nicht vorhanden, dann leer.
- Parameter aus der „Vorlage:Infobox Sendeanlage“ (über
- Danach wird der Inhalt in die Variable
WertSplit
als Zeichenfolge aufgesplittet und die Anzahl der so entstandenen Listeneinträge inAnzSplit
als Zahl abgelegt. - Textverlinkung und Einheitsanbindung
-
- Parameter
-
EHT
: Formatierung der Einheiten zur Anzeige[1]
: Einheit ohne Link, z.B. „m“[2]
: Einheit mit Link, z.B. „m“, (nur wenn vorhanden und nur Anzeige am ersten Wert)
- Alle Einheiten nur wenn vorhanden und als Zeichenkette vorliegend.
LIZ
: resultierende Einheiten(-verlinkung)LTR
: Trennzeichen bei Aufsplittung, entweder ausAufzaehler[DS.BauTyp]
oder nach Standard/
AFZ
: Aufzählung als Tabelle, z.B.Aufzaehlung["VERW"]
STAZ
: Speicher der Listeneintraege[1]
: Name ohne Verlinkung, z.B.Restaurant
[2]
: Name mit Verlinkung, z.B.[[Turmrestaurant|Restaurant]]
[3]
: Kategorie ohne Verlinkung, z.B.Gastronomiebetrieb
[4]
: Kategorietyp, z.B.Aussicht
- Einheiten-Auswähler
- Die Auswahl der Einheiten erfolgt, wenn im Datensatz eine Einheit hinterlegt ist. Diese wird mit der entsprechenden Abfrage als Tabelle in
EHT
abgelegt. - Durchlauf
-
- Schleife: Nach den Listeneinträgen in
WertSplit
, z.B. „Fernmelde“ – „Aussichtsturm“ , gefolgt von einem Vergleich über die Gültigkeit des Listeneintrags mit dem zugehörigen Parameter inAufzaehlung
, z. B.DS.TMP.AFZ[ZS]
→Aufzaehlung["VERW"]
. Sofern vorhanden wird eine - Schleife durch die Werte der Variablen, z. B.
Aufzaehlung["VERW"][1]
,Aufzaehlung["VERW"][2]
, etc. Es erfolgt eine Zuweisung der drei Werte vonSTAZ
nach Bauwerkstyp und wenn nicht vorhanden nach allgemeinem Standardwert. Zusätzlich wird denKategorien
der abgerufene Wert hinzugefügt.
- Schleife: Nach den Listeneinträgen in
- Zu Beginn der ersten Schleife wird überprüft, ob der Listeneintrag im aktuellen Bauwerkstyp verarbeitet werden soll. Dazu wird im ersten Parameter nach Bauwerkstyp ausgelesen, z.B.
DS.TMP.AFZ["Fernmelde"][1]["Aussicht"]
. Ist dieser Wertfalse
(unwahr), so wird der komplette Listeneintrag gestrichen, z.B.DS.TMP.AFZ["Fernmelde"] = nil
. - Nun wird die Auflistung erstellt, je mit der in der Tabelle
DS.TMP.EHT
hinterlegten Einheitszeichen und dem in der VariablenDS.TMP.STAZ
hinterlegten Trennzeichen (Schema: Trennzeichen + „Liste“ + Wert + Einheit). - Die verlinkten Werte (z.B. „MW-Sender“) werden während der Schleifendurchgänge in der Variablen
TMP.WSL
zwischengespeichert und am Ende der in der VariablenWertSplitLink
als Tabelle abgelegt. in die VariableWertZeile
wird die entstandene Liste nur übernommen, wenn die Variable ausBauTyp
sich imAufzaehler
befindet (z.B.Aufzaehler[DS.BauTyp]
→Aufzaehler["Liste"]
→", "
). - Eigenschaften beschriften (je nach Einzahl, Mehrzahl oder Typ)
- Im Untermodul Label sind die Beschriftungen (Eigenschaften) für die Infobox nach dem Muster
[1] = { "Einzahl", "Mehrzahl" }, Bauwerkstyp = { "Einzahl", "Mehrzahl" }
abgelegt. Es wird alsAnzLabel
abgelegt:- kein
Label
: leere Zeichenfolge (nicht nil) Label
nach Bauwerkstyp (mit[1]
Einzahl,[2]
Mehrzahl), wenn nicht vorhanden- allgemeines
Label
(mit[1]
Einzahl,[2]
Mehrzahl), wenn nicht vorhanden - Leere Zeichenfolge als Tabelle
- kein
- Sofern
AnzSplit
, also die Anzahl der Listenwerte größer 1 ist, wird die Mehrzahl-Bezeichnung ([2]
) übergeben, ansonsten die Einzahl-Bezeichnung ([1]
).
- Rückgabewert
- Datensatz
DS
als Tabelle.
Allgemeines zur Funktion DSIB
[Quelltext bearbeiten]Aus dem Hauptmodul wird in einem einheitlichen Schema die Funktion „DSIB“ aufgerufen. Diese enthält grundsätzlich:
- Übergabewerte
-
- Benannte Datensatz
DN
als Tabelle DSZusatz
als TabelleKategorien
als Tabelleframe
- Benannte Datensatz
- Rückgabewert
- Benannter Datensatz
DN
als Tabelle
Funktion DSIB.NAME
[Quelltext bearbeiten]- Verwendung
- Diese Funktion teilt dem Parameter
NAME
den einheitlichen WertNNAME
aus der Funktion „CCN“ zu.
- Funktionsweise
- Es erfolgt eine Zuweisung des Parameters.
Funktion DSIB.UE1
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird der Parameter
PORKARTE
für die Anzeige in der Infobox aufbereitet.
- Funktionsweise
- Die Überschrift besteht aus maximal drei Zeilen:
NAME
OFZ_NAME
FUNK_NAME
- Über
Bezeichner
wird jede Zeile aufbereitet, diese inDN.UE1.WertSplit
abgelegt und, sofern als Parameter von der „Vorlage:Infobox Sendeanlage“ übergeben, zur Anzeige inDN.UE1.WertZeile
übernommen.
Funktion DSIB.IBBild
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur Bereitstellung der Bilddarstellung in der Infobox.
- Funktionsweise
- Nach Zuweisung mehrerer Variablen wird die Variable
BILDERWUNSCH
zugewiesen. Dazu wird die Vorlage:Bilderwunsch/Listeneintrag expandiert. Im Anschluss wird eine Abfrage durchgeführt:- bei Schlüsselwörter wie „kein“ in
DN.BILD.WertZeile
, wird dieWertZeile
aus Unwahr gesetzt. Ausgeblendet wird die Anzeige über die Anzeige des Hauptmoduls. Die entsprechende Kategorie überDN.TMP_KAT
an das Hauptmodul übergeben und dort an die VariableKategorie
angehängt. - Wurde kein Bild aus dem Parameter
BILD
aus der „Vorlage:Infobox Sendeanlage“ übergeben, wird das Symbol für den Bilderwunsch angezeigt und das Ergebnis der Vorlage:Bilderwunsch/Listeneintrag (VariableBILDERWUNSCH
) abgelegt. Dies unterbleibt bei nicht mehr existierenden Bauwerken (vergleicht hierzuDN.ABR_DEKADE.WertZeile
). - Ist eine Datei angegeben, dieses aber nicht abrufbar (z.B. nicht vorhanden), wird dies durch das Vorhandensein der Parameter Breite und Höhe festgestellt. In diesem Fall wird über die Funktion „Fehler“ eine Fehlermeldung ausgegeben.
- Anzeige des Bildes:
- Damit die anzuzeigenden Bilder alle ca. gleich groß sind, sind für die Bildparameter Maximalwerte (Breite, Höhe, Fläche) definiert. Diese werden mit den tatsächlichen Werten des Bildes abgeglichen und entsprechend in die Infobox eingepasst.
- Die Bereitstellung der Anzeige erfolgt über einen
div
-Tag.
- bei Schlüsselwörter wie „kein“ in
Funktion DSIB.Regionen
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet die Daten aus dem Parameter
REGION-ISO
mittels der VariableREGION
für die Anzeige in der Infobox auf.
- Funktionsweise
- Die Zuweisung der Daten in die Variablen erfolgt in Abhängigkeit von der Tabelle aus der Funktion „DSFI“, die über das Hauptmodul als Variable
DSZusatz.REGION
(Tabelle) bereitgestellt wird. - Ist die Variable
DSZusatz.REGION["0"]
als Tabelle nicht vorhanden, wird eine Fehlermeldung über die Funktion „Fehler“ ausgegeben. - Sofern vorhanden wird im
AnzLabel
(linke Anzeige) aus der jeweiligen Region der Wert ausDSZusatz.REGION[Nr]["admtype"]
abgelegt, derWertZeile
mit dem verlinkten Namen. Das Ausblenden bei Nichtvorhandensein übernimmt die Anzeige im Hauptmodul.
Funktion DSIB.LAGEPUNKT
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird der Parameter
LAGEPUNKT
für die Anzeige in der Infobox aufbereitet.
- Funktionsweise
- Abweichend der Standardprozedur wird abgelegt in den Parametern
DN.LAGEPUNKT.WertZeile
als Zeichenfolge – das Ergebnis der Berechnung der Wiki-Vorlage:HöheDN.LAGEPUNKT.WertSplit[1]
als Zahl – numerische HöhenwertDN.LAGEPUNKT.WertSplit[2]
als Zeichenfolge – lokale Höhenbezug, generiert aus dem Wert inDSZusatz.REGION["0"]["acronym"]
- Als Besonderheit wird bei Bauwerken in Liechtenstein und in der Schweiz der Zusatz
-m
hinzugefügt.
Funktion DSIB.ZUGANG
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird der Parameter
ZUGANG
für die Anzeige in der Infobox aufbereitet.
- Funktionsweise
- Je nach Schlüsselwort in
WertZeile
(ja/nein) wird ein standardisierter Test abgelegt. Sofern der Wert im Parameter nicht übereinstimmt, wird der Inhalt des ParametersZUGANG
ausgegeben. Sofern es sich um ein ehemaliges Bauwerk handelt, entfällt die Anzeige (Ausnahme Sendeanlage).
Funktion DSIB.IBTBau
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird, je nach Parameter-Liste der Vorlage eine Auflistung, abgelegt in
IBTBau
für die Anzeige in der Infobox erzeugt.
- Funktionsweise
- In der
Tabelle
sind die Datensätze der infrage kommenden Parameter aufgeführt (Tabelle[1]
= Eigenschaft,Tabelle[2]
= Wert). Die Überschrift des Klapptextes wird in Abhängigkeit des ParametersT_BAU_ZEIT
festgelegt. - Ergibt die Funktion „ZDS“ den Rückgabewert
true
(Mindestanzahl an gültigen Werten), wird die Tabelle angezeigt, ansonsten werden die Einzelwerte eingeblendet.
Funktion DSIB.IBTHoch
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird, je nach Parameter-Liste der Vorlage eine Auflistung, abgelegt in
IBTHoch
für die Anzeige in der Infobox erzeugt.
- Funktionsweise
- In der
Tabelle
sind die Datensätze der infrage kommenden Parameter aufgeführt (Tabelle[1]
= Eigenschaft,Tabelle[2]
= Wert). Die Überschrift des Klapptextes wird in Abhängigkeit des ParametersT_HOCH_GES
festgelegt. - Ergibt die Funktion „ZDS“ den Rückgabewert
true
(Mindestanzahl an gültigen Werten), wird die Tabelle angezeigt, ansonsten werden die Einzelwerte eingeblendet.
Funktion DSIB.IBSHoch
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird, je nach Parameter-Liste der Vorlage eine Auflistung, abgelegt in
IBSHoch
für die Anzeige in der Infobox erzeugt.
- Funktionsweise
-
- In der
Tabelle
sind die Datensätze der infrage kommenden Parameter aufgeführt (Tabelle[1]
= Eigenschaft,Tabelle[2]
= Wert,Tabelle[4]
= Listeneinträge,Tabelle[4]
= Anzahl Listeneinträge,Tabelle.Name
= Bezeichnung (Label)). Die Überschrift des Klapptextes wird in Abhängigkeit des ParametersT_HOCH_GES
festgelegt. - Maximale Datensatz-Anzahl: Es wird durch Schleife durch die Tabelle die maximale Anzahl an Listeneinträge ermittelt und in der Variable
SatzMax
abgelegt. - Sortierung nach Turm/Mast: Es wird eine Tabelle zusammengestellt in
Komplett
nach Türmen/Masten und in Schleifen abgearbeitet.- Schleife: nach Turm/Mast
- Schleife: einzelne Listeneinträge (leere werden durch einen Halbgeviertstrich
–
ersetzt)
Beispiel AbrufDSLg[ZZ][ZZk] = Tabelle[Turm][Datensatz]
- Leere erkennen: Sofern ein Parameter aus der
Tabelle
komplett fehlt, wird dieser aus den einzelnen Tabellen entfernt. - Liste anzeigen: Mittels
Grundsatz
wird bestimmt, ob die Auflistung/Box nach Turm/Mast überhaupt benötigt wird; wenn z.B. Bauzeit/Betriebszeit nur mit einem Listeneintrag vorhanden ist. Sofern nach Prüfung der Wert der VariableGrundsatz
auf Unwahr (false) steht, wird die Auflistung/Box mittelsBauTyp
ausgeblendet.
- In der
Funktion DSIB.KOORDINATEN
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird der Parameter
KOORDINATEN
für die weitere Verwendung aufbereitet. Dazu wird, sofern nicht vorhanden, der Dezimalwert der Koordinaten ermittelt und abgelegt.
- Funktionsweise
- In der Variablen
DSMB.KO
wird die Information abgelegt:
- 1. Parameter:
- Breitengrad
- Längengrad
- dazu je
[1]
= Parametername, z.B. „NS“P
= Bezeichnung bei positiver Gradzahl z.B. „N“N
= Bezeichnung bei negativer Gradzahl z.B. „W“
- Die erste Schleife durchläuft den Breitengrad und Längengrad nacheinander. Da die Koordinaten gem. Vorlage:Coordinate angegeben werden können (als Gleitkommazahl oder als Winkel, getrennt durch
/
), ist der Parameter aufgesplittet und wird in der zweiten Schleife durchlaufen. - Damit der richtige Gleitkommawert ermittelt werden kann, wird die Zahl nach der Formel
„Zahl“ / (60 ^ ( „Schleifenzähler“ - 1 ))
berechnet. Sofern die Himmelsrichtung angegeben ist, wird die Zahl mit1
bzw.-1
multipliziert. - Es folgt eine Gültigkeitsprüfung der Werte (Ablage des Ergebnisses in
DSMB.ist
):- Breitengrad:
-90
bis90
- Längengrad:
-180
bis180
- Breitengrad:
- Das Ergebnis wird wie folgt festgehalten:
Art WertZeile
WertSplit[1]
AnzSplit
Korrekter Wert Wert als Zeichenfolge Wert als Zahl 1 kein Wert kein Wert (nil) kein Wert (nil) 0 Formatierungsfehler kein Wert (nil) Wert als Zeichenfolge 1 Wert außerhalb der Gültigkeit kein Wert (nil) Wert als Zahl 1
Funktion DSIB.POSKARTE
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird der Parameter
POSKARTE
für die Anzeige in der Infobox aufbereitet.
- Funktionsweise
- Wenn keine Regions-Daten oder Geokoordinaten vorliegen oder die Anzeige über
POSKARTE
mittels des Schlüsselworts „kein“ abgeschaltet wurde, erfolgt keine Anzeige der Positionskarte. - Die Positionskarte wird aus der Wiki-Vorlage:Positionskarte generiert. Vorrangig wird verwendet:
- die Karte des Parameters
POSKARTE
der „Vorlage:Infobox Sendeanlage“, wenn nicht angegeben - Positionskarte des Staates und, wenn vorhanden,
- Positionskarte der Region. Es wird dann in einer kleinen Karte die Positionskarte des Staates angezeigt
- die Karte des Parameters
- Über die entsprechenden Positionskarten-Vorlagen werden die Grafiken ausgelesen und die Höhen- und Breitenwerte entsprechend berechnet. Ziel ist es bei jedem Aufruf der „Vorlage:Infobox Sendeanlage“ etwa gleichgroße Karten zu erzeugen. Die Karten selbst werden über die Wiki-Vorlage:Positionskarte eingeladen und der Variable
POSKARTE.WertZeile
abgelegt.
Funktion DSIB.KoordKarte
[Quelltext bearbeiten]- Verwendung
- Diese Funktion dient zur Darstellung der geographischen Koordinaten.
- Funktionsweise
- Zunächst werden die Variablen für die Wiki-Vorlage inklusive der Daten für die Wiki-Vorlage:Coordinate geladen. Es gibt drei wesentliche Schalter:
DSMB.Artikel
true
: Koordinaten sind die Artikelkoordinaten und werden im Artikel oben rechts angezeigtfalse
: Koordinaten werden in der Infobox angezeigt
DSMB.Anzeige
true
: Die Zeile für die Koordinaten wird angezeigt. Ggf. wird dort eine Fehlermeldung angezeigt.false
: Die Zeile wird zum Feld und das „AnzLabel“ ist leer. Dadurch „verschwindet“ die sichtbare Anzeige
DSMB.Rahmen
true
: bei Fehlermeldungen erhält die Anzeige einen Rahmenfalse
: Anzeige hat keinen Rahmen
- Nun erfolgt eine Zuweisung der Parameter und ggf. der Fehlermeldungen in Abhängigkeit der REGION-ISO und der KOORDINATEN.
- Es folgt die Expansion der „Vorlage:Coordinate“ und ggf. das Setzen des Rahmens.
Funktion DSFI
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird eine Tabelle zur Verfügung gestellt, in dem die Werte entsprechend dem Parameter „REGION-ISO“ aus der „Vorlage:Infobox Sendeanlage“ einsortiert werden.
- Übergabewert
-
DatenWL
: als Tabelle für die Übernahme des sich aus einer anderen Wiki-Seite ergebenden Parameter (betrifft nur die Funktion „Weiterleitung“)
- Funktionsweise
- in der Variable
DSFD
werden die Werte, generiert aus der Funktion „REG“ abgelegt. In der anschließenden Abfrage werden je nach Level die Parameter „0“, „1“ und „2“ definiert, Beispiel: REGION-ISO = DE-BW
dann ist Level =1
und damitREGION["0"]
= Tabelle,REGION["1"]
= Tabelle,REGION["2"]
= nil
- Rückgabewert
- Tabelle mit allen Regions-Daten. Diese Tabelle wird in
DSZusatz
eingebaut.
Funktion GeoVERW
[Quelltext bearbeiten]- Verwendung
- Diese Funktion wird im Hauptmodul benötigt, um bei Kategorisierung nach Regionen den korrekten Kategorienamen zu bestimmen.
- Übergabewerte
-
Art
: Art der Kategorie, z. B. „Gastronomiebetrieb“Ort
: Die im Hauptmodul verwendete Variable, z. B. „CSTADT“KFSv
: Die im Hauptmodul verwendete Variable für die Region, z. B. „1“REGION
: Tabelle der RegionenDSTADT
: Geo-Bezeichnung zu CSTADT, z. B. „in Zürich“
- Funktionsweise
- Mittels der Variable
VXW
werden die Werte festgelegt: In der Tabelle entspricht der Parameter dem ÜbergabewertOrt
, darunter im Parameter [1] der Standartwert. Die weiteren Parameter entsprechend dem ÜbergabewertArt
. - In der Variable
LOC
wird zunächst aus derVXW
die Parameter["CSTADT"][1]
als Standard definiert. In der nachfolgenden Abfrage wird, wenn vorhanden der Wert nachOrt
und nachArt
übernommen.
- Rückgabewert
- Variable
LOC
als Zeichenfolge, je nach Übergabewerte, z.B.: GeoVERW( "Fernmeldeturm", "Stuttgart", "1", REGION )
ergibt
Funktion DatenWeiterleitung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion stellt die Parameter aus der Ziel-Seite für die Verarbeitung in der Vorlage zur Verfügung.
- Übergabewerte
-
Daten
als Tabelle (über die Funktion „Label“)
- Funktionsweise
- Zunächst wird der Parameter
ZIEL
der Vorlage in den ParameterZiel.Name
eingelesen (enthält ). Dieser Wert wird aufgeteilt. - Der Seiteninhalt (Quelltext) der Zielseite wird in die Variable
Ziel.Seite
geladen. - Es wird die Vorlageneinbindung am Anfang und am Ende markiert und aufgesplittet (abgetrennt). Das gleiche Prinzip wird bei den Parametern angewandt. Die Vergleichsparameter werden über die Variable
Daten
bezogen. Da diese Vergleichsparameter diverse Parameter nicht enthalten, werden diese manuell hinzugefügt. - In der Variable
Ziel.vorTabelle
werden die Werte ohne Zeilenumbruch abgelegt. Eine Trennung der Parameter erfolgt in der VariablenZiel.ZwischenTabelle
. In der VaruablenZiel.Tabelle
wird die Werte nochmals gestrafft (Leerzeichen entfernt) und gemäß ihrem Parameter abgelegt.
- Rückgabewert
Ziel.Tabelle
als Tabelle mit den Parametern der Ziel-Seite.
Lokale Variablen im Untermodul
[Quelltext bearbeiten]- Layout
- Mittels dieser Variablen wird bestimmt, in welcher Reihenfolge die Funktion „InfoboxDarstellung“ die Infobox zusammensetzen soll. Im ersten Datensatz wird allgemein die Reihenfolge aller Typen des
CAT_TYP
-Parameters der „Vorlage:Infobox Sendeanlage“ festgelegt. In den Parametern (entsprechend den der Funktion „Bezeichner“ des Untermoduls „Label“) wird dann festgelegt, welche Zeilen nicht angezeigt werden.
Funktionen für das Hauptmodul
[Quelltext bearbeiten]Funktion InfoboxDarstellung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet für das Hauptmodul die Daten zu den Parametern der Infobox auf.
- Übergabewerte
-
DSZusatz
als Tabelle:Daten
als Tabelle: Datensatz numerischDN
als Tabelle: Datensatz KlartextKategorien
als TabelleIB
als Zeichenfolge: Bisherige Infobox-Anzeigeframe
als TabelleLayoutExtern
als Tabelle:
- Funktionsweise
- Nach der Festlegung von Eingangsvariablen folgt eine Schleife durch den ersten Datensatz der Variable
Tabelle
. Dort sind alle Parameter der Infobox der Reihe nach verzeichnet, die anzeigbar sind. Je nach Bauwerkstyp sind im ParameterTabelle[DSZusatz.Typ]
. diejenigen Parameter der Infobox verzeichnet die dann ausgeblendet werden. Die Abfrage erfolgt über eine zweite Schleife und wird mitAnzeiger.Anzeigen = false
vermerkt. - Angezeigt werden in der Infobox nur
Anzeiger.DS.BauTyp ~= "Ausblenden"
= der Bauwerkstyp nicht „Ausblenden“ undAnzeiger.Anzeigen == true
= die Anzeige grundsätzlich für den Bauwerkstyp festgelegt wurde undAnzeiger.DS.WertZeile
= ein Wert zum Anzeigen vorhanden ist
- Sofern ein anderer Ausklapptext für den Standardwert „ausklappen“ vorhanden ist, wird dieser in
Anzeiger.DS.ausklappen
als Zeichenfolge abgelegt. - In der Variablen
IBD
wird nun als Zeichenfolge die Werte zusammengestellt. Dabei wird das Prinzip der Wiki-Tabelle verfolgt.
- Rückgabewert
- Die darzustellende Infobox
IBD
als Zeichenfolge.
Funktion KategorieDarstellung
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet für das Hauptmodul die bereitgestellten sortierten Kategorien in Abhängigkeit der Namensräume auf.
- Übergabewerte
-
DSZusatz
als Tabelle:Daten
als Tabelle: Datensatz numerischDN
als Tabelle: Datensatz KlartextKategorien
als Tabelleframe
als Tabelle
- Funktionsweise
- Die Auswertung erfolgt getrennt nach Namensraum. Im Artikelnamensraum
NSP == 0
werden die Kategorien direkt unter die Infobox angefügt, z. B.[[Sendeanlage in Bayern]]
; in den anderen Namensräumen als eingerahmter Text, z.B.[[:Sendeanlage in Bayern]]
. - Es erfolgt eine Schleife durch die
Kategorien
. Gemäß dem zweiten Wert (Sortierungstyp der Kategorie) wird der Sortierungsname der Kategorie im Artikelnamensraum bestimmt und in der VariablenKatAnzeige.mittel
als Zeichenfolge abgelegt. in der VariablenKatAnzeige.Text
wird dann der Kategorientext zusammengestellt. - Nachdem alle Kategorien zusammengestellt wurden, wird der Text, eingerahmt mittels Variable
KatAnzeige.Box
, der VariableIB
als Zeichenfolge angefügt.
- Rückgabewert
- Die darzustellenden Kategorien
IBKat
als Zeichenfolge.
Funktion Layout
[Quelltext bearbeiten]- Verwendung
- Diese Funktion gibt den Inhalt der lokalen Tabelle
Layout
zurück.
- Übergabewerte
- keine
- Funktionsweise
- Aufruf des Rückgabewertes
- Rückgabewert
- Variable
Layout
als Tabelle
Lokale Variablen im Untermodul
[Quelltext bearbeiten]- WeitereAufzaehlung
- Weitere Parameter, die in „Parameter-Details“ der Vorlagen-Dokumentation angezeigt werden sollen.
- Ersatz
- Text für die für die in der deutschen Grammatik genutzten Deklaration der Artikel der unterschiedlichen Bauwerkstypen. Dabei gilt:
- In jeder Tabelle sind als je als Zeichenfolge enthalten die entsprechenden Bauwerkstypen, sowie als erster Wert die allgemeine Bezeichnung.
Funktionen innerhalb des Untermoduls
[Quelltext bearbeiten]Funktion Anker
[Quelltext bearbeiten]- Verwendung
- Mittels dieser Funktion wird ein Anker, ähnlich der Vorlage:Anker erzeugt. Beispiel:
[[#DokuDetailVorlage|Linkziel]]
für Linkziel.
- Übergabewerte
-
- Wert:
Text
: als Zeichenfolge - Wert:
ID1
: als Zeichenfolge - Wert:
ID2
: als Zeichenfolge - Wert:
ID3
: als Zeichenfolge
- Wert:
- Funktionsweise
- Die einzelnen Übergabewerte werden in der Variable
AnkerID
abgelegt und ggf. mit Standardwerten versehen. InAnkerID.div
wird aus der Bibliothek die Funktionmw.html.create
aufgerufen und so der html-div-Tag erzeugt.
- Rückgabewert
- Text mit Anker in einem html-div-Tag (
AnkerID.div
: als Zeichenfolge)
Funktionen für das Hauptmodul
[Quelltext bearbeiten]Funktion DokuVorlage
[Quelltext bearbeiten]- Verwendung
- Diese Funktion bereitet die Daten aus dem Parameter
JSON
für die Funktion „Dokumentation“ auf.
- Übergabewert
-
DSZusatz
als Tabelle, insbesondereBezeichner
als Tabelle: zur Ermittlung des BauwerkstypLayout
als Tabelle: zur Ermittlung welche Parameter in der Kopiervorlage und in der Wiki-Tabelle „Parameter-Details“ angezeigt werden sollenAufzaehlung
als Tabelle: Werte für die Wiki-Tabelle „Parameter-Details“
Daten
als Tabelle (Daten aus der Funktion „Label“): zur Festlegung der Reihenfolge, in dem die Parameter angezeigt werden sollen
- Funktionsweise
-
- Standardvariable definieren
-
JSON
als Zeichenfolge: Einlesen des Parameters aus dem Vorlagen-AufrufesTEMP
als Tabelle: Temporärer Speicher, insbesondereTyp
als Zeichenfolge: Einlesen des Namens der Wiki-Vorlage, z.B. Vorlage:Infobox Sendeanlage wird zuSendeanlage
. Sofern es kein Wert ist, der in der Funktion „Bezeichner“ verzeichnet ist, wird die Zahl1
abgelegt.
- Anpassung und Ausgabe von „TemplateData“
- Durch den im Parameter
TEMP.Typ
abgelegten Bauwerkstyp werden durch eine Schleife in der VariableTEMP.Ersatz
die grammatischen Bezeichnungen abgelegt, die aus der VariablenErsatz
generiert werden. - In der darauffolgenden Schleife werden im Text in der Variablen
JSON
die Platzhalter durch die grammatischen Bezeichnungen ersetzt. - Es erfolgt der Aufruf der Wiki-„Vorlage:TemplateData“ nebst Übergabe der benötigten Argumente.
- Auswertung auf Richtigkeit der Variable
JSON
- In der Variablen
TEMP.Status
wird das Ergebnis der Prüfung abgelegt. Sofern der Text korrekt ist, enthält die Variabletrue
, ansonstenfalse
. Bei der folgenden AbfrageTEMP.Status == false
wird eine Fehlermeldung ausgeben und es entfällt die nachfolgende Ausgabe der Kopiervorlage und der Parameter-Details. Dies ist nötig, da sonst das Auslesen vonJSON
und Ablegen in der TabelleDaten
zu einem Abbruch der kompletten Modul-Ausführung kommen würde. - Einzelzuweisung
- Die Daten zur Anzeige werden automatisch generiert aus den Parametern der Variable
JSON
in Abgleich mit den Parametern der VariableDaten
und VariableDSZusatz.Aufzaehlung
. Fehlende Parameter werden hier mit den entsprechenden Werten aufgespielt. - Kopiervorlage Voraussetzung
- Zunächst werden die Daten aus
JSON
über den Aufruf der entsprechenden Bibliothek in eine Tabelle umgewandelt und in der VariablenDaten
abgelegt. - Die Reihenfolge der Ausgabe der Parameter in der Kopiervorlage wird festgelegt durch die Reihenfolge der Variablen in der Funktion „Label“. Es werden mehrere Schleifen durchlaufen:
- Schleife durch die Daten aus der Funktion „Label“ (als
Daten
) - Schleife durch die Tabelle
Daten.params
→ Ablage des Datensatzes in der VariableLokalDaten
als Tabelle, wenn beide Namen (z.B. „T_HOCH_GES“) übereinstimmen, dazu wird noch abgelegtName
als Zeichenfolge sowieLayout
als Tabelle, indem in der - Schleife die Zusammenstellung des Layouts aus der Funktion „Layout“ ausgelesen wird.
- Schleife wird benötigt, da in der Variablen
Layout
als erster Werttrue
(wahr) abgelegt. Sofern in dieser Schleife eine Übereinstimmung besteht, wird unter dem Bauwerkstyp der Wertfalse
(unwahr) abgelegt.
- Schleife durch die Daten aus der Funktion „Label“ (als
- Kopiervorlagen zusammenstellen
- Es wird eine Schleife zusammengestellt mit den anzuzeigenden Kopiervorlagen. In jeder Schleife wird die Variable
TEMP.EinzelDaten
als Tabelle definiert, indem nur die Datensätze ausLokalDaten
enthalten sind, die für den jeweiligen Bauwerkstypen vorgesehen sind. - Die Zusammenstellung selbst erfolgt in der Variable
TEMP.KText
. Als Zeichenfolge werden in einer Schleife die Parameter ausgelesen, einheitlich das Gleichheitszeichen=
gesetzt und ggf. Vorschläge zur Verwendung ausautovalue
ausgelesen und abgelegt. Nach dem Parameter „CAT_TYP“ wird der jeweilige Bauwerkstyp generiert. - Nach der Zusammenstellung der Variable
TEMP.KText
werden ein <html>-Tag „pre“ und ein <html>-Tag „div“ generiert. - Als letzter Anzeigepunkt dieses Abschnittes folgt die Kopiervorlage für eine Weiterleitung.
- Datenverarbeitung Parameter-Details
- Auch hier wird mittels einer Schleife die Variable
TEMP.EinzelDaten
als Tabelle zusammengestellt, indem nur die Datensätze ausLokalDaten
enthalten sind,- die Listen führen (in der Funktion „Aufzaehlung“ gelistet),
- die für den jeweiligen Bauwerkstypen vorgesehen und
- nicht als veraltet (
deprecated ~= true
) deklariert sind.
- Zusammenstellung der Eigenschaften der Parameter
- Es wird nun mittels zweier Schleifen jedes der Parameter und Werte verarbeitet (abgelegt in der Variable
TEMP.Liste
). In der ersten Schleife werden zu jedem Parameter, z.B. „VERW“, die Eigenschaften- „Name“ als Zeichenfolge, z.B. „VERW“,
- „Label“ als Zeichenfolge, z.B. „Verwendung“
- „Sortierung“ alphabetisch sortiert als Tabelle und
- Argument „args“ als leere Tabelle
- aus der Variablen
DSZusatz.Aufzaehlung
ausgelesen und in der VariableTEMP.Liste
abgelegt. - Zusammenstellung der Eigenschaften der Werte in den Parametern
- In der zweiten Schleife werden zunächst die Eigenschaften des jeweiligen Wertes der Parameter, z.B. „Fernmelde“,
- „Name“ als Zeichenfolge,
- „Label“ als Zeichenfolge, jeweils erster Wert (z.B.
[[Fernmeldeturm]]
für Fernmeldeturm), - „Kategorie“ als Zeichenfolge, jeweils erster Wert (z.B.
[[:Kategorie:Sendeturm]]
für Kategorie:Sendeturm), und - sofern verzeichnet „KatAnzeige“ als Wert
false
(unwahr)
- aus der Variablen
DSZusatz.Aufzaehlung
ausgelesen und in der Variableargs
inTEMP.Liste
abgelegt. - Sofern für den jeweiligen Bauwerkstyp ein anderes „Label“ oder andere „Kategorie“ zugewiesen sind, werden diese nun ausgelesen und abgelegt.
- Zusammenstellung bei mehreren Labeln bzw. Kategorien
- Es wird die Variable
TEMP.LIZ
als Tabelle (jeweils für „Labels“ und „Kategorien“) für die jeweiligen Bauwerkstypen generiert. Hat die Tabelle mehr als einen Eintrag, wird eine Wiki-Tabelle erzeugt und im entsprechenden Argument „args“ abgelegt. - Geo-Kategorisierung
- Sofern eine Geo-Kategorisierung erfolgt (in der Variable
DSZusatz.Aufzaehlung
alsGeo = "GeoC"
oder alsGeo = "GeoN"
), wird ein entsprechender Hinweistext in der Variableargs.Kategorie
hinzugefügt.
- Anzeige Wiki-Tabelle Parameter-Details
- Nach der Überschrift und nach dem einleitenden Hinweis zur Bearbeitung der Tabelle erfolgt die Zusammenstellung über zwei Schleifen aus der Variable
TEMP.Liste
- Die erste Schleife stellt zu Kapitel-Überschrift dar, z.B. „Verwendung (VERW)“. Dazu wird dieser Text mit einem Anker (mittels Funktion „Anker“) versehen.
- In der zweiten Schleife werden die Werte der Parameter dargestellt, jeweils nacheinander die zugehörigen Spalten. Sofern verzeichnet, werden über die Zuweisung
KatAnzeige = false
die Spalten „Anzeige“ und „Kategorie“ zusammengefasst.
- Rückgabewert
- Anzuzeigenden Text als Variable
Doku
als Zeichenfolge
Funktion DokuLabel
[Quelltext bearbeiten]- Verwendung
Diese Funktion wird zur Zusammenstellung der anzuzeigenden Wiki-Tabelle verwendet.
- Übergabewert
-
DSZusatz
als TabelleDaten
als Tabelle (Daten aus der Funktion „Label“): zur Zusammenstellung der Parameterliste
- Funktionsweise
- Zunächst wird mittels zweier Schleifen durch die Variable
Daten
eine Liste (ListeParameter
) mit allen Parametern erzeugt und alphabetisch sortiert. - Darauffolgend wird in der Tabelle
TabelleParameter
der „Name“ und der „Inhalt“ zu jedem Parameter abgelegt. Der „Inhalt“ wird über die Parameter der Vorlage eingelesen und zur Ausgabe vorbereitet, indem:- wenn die Werte mit einem Schrägstrich
/
versehen sind als Untertabelle generiert werden - die Platzhalter
$TabelleAnfang
und$TabelleEnde
durch Quellcode für weitere Untertabellen ersetzt wird
- wenn die Werte mit einem Schrägstrich
- Im dritten Schritt wird die Tabelle angezeigt. Angezeigt werden nur Parameter, die nicht mit dem Parameter „kein“ ausgeblendet werden sollen. Die Hintergrundfarben werden erzeugt.
- grün: durch den Platzhalter
$org
im Vorlagen-Parameter - gelb: Hintergrund, wenn Parameter aus der Variable
Daten
beschrieben wurde - rot: Hintergrund, wenn Parameter aus der Variable
Daten
nicht beschrieben wurde
- grün: durch den Platzhalter
- Zuletzt wird eine Farb-Legende am Ende der Wiki-Tabelle angefügt.
- Rückgabewert
- Anzuzeigende Wiki-Tabelle als Variable
Doku
als Zeichenfolge
Funktion DokuZusatz
[Quelltext bearbeiten]- Verwendung
Diese Funktion stellt eine Wiki-Tabelle zusammen, die die Parameter für die Dokumentation der Funktion „Zusatz“ liefert.
- Übergabewert
-
DSZusatz
als Tabelle
- Funktionsweise
- Zunächst werden aus der Variable
DSZusatz
die Parameter extrahiert und in der VariableSortierung
der Reihe nach abgelegt. Diese Liste wird alphabetisch sortiert. In der VariableBeschreibung
wird nun der „Name“ und die „Beschreibung“ (extrahiert aus den Parameter der Vorlage) abgelegt. - Nach Generierung des Tabellenkopfes wird mittels einer Schleife durch die Variable
Beschreibung
der „Name“ (links) und die „Beschreibung“ (rechts) angezeigt.
- Rückgabewert
- Anzuzeigende Wiki-Tabelle als Variable
Doku
als Zeichenfolge
Funktionen für das Hauptmodul
[Quelltext bearbeiten]Funktion WartungLua
[Quelltext bearbeiten]- Verwendung
- Diese Vorlage dient zur Auswertung der Parameter zu Wartungszwecken. Es erfolgt eine Rückgabe an die Funktion „Wartung“.
- Übergabewerte
-
DSZusatz
als Tabelle (aus Funktionen für Vorlagen)Daten
als Tabelle (aus Funktion „DS_Aufbereitung“)DN
als Tabelle (aus Funktion „DS_Aufbereitung“)Kategorien
als Tabelle (aus Funktion „DS_Aufbereitung“)frame
als Tabelle
- Funktionsweise
- im oberen Bereich können die Auswertungen programmiert werden. Wichtig ist, dass bei einer wahren Bedingung der Tabelle
WAL
über die Bibliothektable.insert
der Link hinzugefügt wird, z.B.table.insert(WAL, "Parameter 1" )
. - Im unteren Bereich werden die Ziele ausgelesen, formatiert und an die Variable
WAL.Text
übergeben.
- Rückgabewert
WAL.Text
: als Zeichenfolge
Funktion WartungWiki
[Quelltext bearbeiten]- Verwendung
- Diese Vorlage dient zum Abruf der Wartungsparameter der Unterseite Vorlage:Infobox Sendeanlage/WART zur Rückgabe an die Funktion „Wartung“.
- Übergabewerte
-
DSZusatz
als Tabelle (aus Funktionen für Vorlagen)DN
als Tabelle (aus Funktion „DS_Aufbereitung“)
- Funktionsweise
- Mittels einer Schleife durch die Variable
DN
werden die Parameter und Werte zur Übergabe ermittelt und in der VariableWAW.args
abgelegt.
- Rückgabewert
- expandierte Wiki-Vorlage über
frame:expandTemplate
: als Zeichenfolge