Modul:Faktenbox/Doku: Unterschied zwischen den Versionen

(→‎Funktionen Modul:Faktenbox/Tabs: Modul:Faktenbox/Tabs/Adressen)
 
(19 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 3: Zeile 3:
Dieses Modul enthält gemeinsame Funktionen, um eine Faktenbox zu füllen
Dieses Modul enthält gemeinsame Funktionen, um eine Faktenbox zu füllen


== Funktionen Modul:Faktenbox ==
== Funktionen [[Modul:Faktenbox]] ==


=== <code>Faktenbox()</code> ===
=== <code>Faktenbox()</code> ===
Zeile 10: Zeile 10:
Sie setzt ebenso Attribute wie die regulären Faktenboxen z.B. von Gebäuden, Straßen, Personen usw.
Sie setzt ebenso Attribute wie die regulären Faktenboxen z.B. von Gebäuden, Straßen, Personen usw.


== Funktionen Modul:Faktenbox/Tabs ==
=== Wrapper ===
Funktionsaufrufe von Modul:Faktenbox werden an die Unterseiten-Module weitergereicht.
 
== Funktionen [[Modul:Faktenbox/Tabs]] ==


=== <code>universalDatenTab()</code> ===
=== <code>universalDatenTab()</code> ===
Zeile 16: Zeile 19:


=== <code>bildTab()</code> ===
=== <code>bildTab()</code> ===
Selbsterklärend...
=== <code>kartenTab()</code> ===
Selbsterklärend...
Selbsterklärend...


Zeile 27: Zeile 27:
Vervollständigt Tab-Inhalt zu einem Tab.
Vervollständigt Tab-Inhalt zu einem Tab.


== Funktionen Modul:Faktenbox/Tabs/Adressen ==
=== <code>table_header_footer()</code> ===
Baut die HTML-Tags für eine table herum.
 
=== <code>factbox_header_footer()</code> ===
Baut die HTML-Tags für eine factbox herum.
 
== Funktionen [[Modul:Faktenbox/Tabs/Karte]] ==
 
=== <code>kartenTab()</code> ===
Selbsterklärend...
 
=== <code>getKartenArgs()</code> ===
Karten-Argumente übernehmen und aufbereiten.
 
== Funktionen [[Modul:Faktenbox/Tabs/Adressen]] ==


=== <code>adressenTab()</code> ===
=== <code>adressenTab()</code> ===
Zeile 36: Zeile 50:
Erstellen Sortierindizes anhand Datum und Schlüsselwörtern (z.B. Geburtshaus ganz oben) für chronologische Sortierung.
Erstellen Sortierindizes anhand Datum und Schlüsselwörtern (z.B. Geburtshaus ganz oben) für chronologische Sortierung.


== Funktionen Modul:Faktenbox/Zeilen ==
== Funktionen [[Modul:Faktenbox/Zeilen]] ==


=== <code>zeileKategorieSeite()</code> ===
=== <code>zeileKategorieSeite()</code> ===
Diese Zeile ist die oberste Zeile eines Daten-Tabs, welche nochmal den Namen des Objekts und einen Link zur Klassen-Kategorie anzeigt und das [[Attribut:Seite]] setzt.
Diese Zeile ist die oberste Zeile eines Daten-Tabs, welche nochmal den Namen des Objekts und einen Link zur Klassen-Kategorie anzeigt setzt.


=== <code>zeileStrasseHnr()</code> ===
=== <code>zeileStrasseHnr()</code> ===
Zeile 52: Zeile 66:


=== <code>zeileDatum()</code> ===
=== <code>zeileDatum()</code> ===
Zeile um ein Datum standardisiert per <code>linkFormDate()</code> anzuzeigen.
Zeile um ein Datum standardisiert per <code>linkFormDateAttrList()</code> anzuzeigen.
 
=== <code>zeileEndeDatum()</code> ===
Wie zeileDatum(), aber dass Ende-Attribute ([[Attribut:Ehemals]], [[Attribut:Verstorben]], ...) automatisch gesetzt und nicht angezeigt wird, wenn Ende-Datum ([[Attribut:Schließungsdatum]], [[Attribut:Todesdatum]], ...) angegeben.
 
=== <code>zeileEndeJahr()</code> ===
Wie zeileDatum(), aber dass Ende-Attribute ([[Attribut:Ehemals]], ...) automatisch gesetzt und nicht angezeigt wird, wenn Ende-Jahr ([[Attribut:Abrissjahr]], ...) angegeben.


=== <code>zeileSemantikBrowsenAbfrage()</code> ===
=== <code>zeileSemantikBrowsenAbfrage()</code> ===
Zeile 77: Zeile 97:
|-
|-
| <code>val_postfix</code> || Attribut-Wert-Postfix z.B. "km"
| <code>val_postfix</code> || Attribut-Wert-Postfix z.B. "km"
|-
| <code>val_show_only</code> || Attribut-Wert nur anzeigen, aber nicht setzen
|}
|}


Zeile 90: Zeile 112:
#* Attribut <code>name</code> mit <code>val</code> per <code><nowiki>{{#set:Attribut=Wert}}</nowiki></code> unsichtbar im Hintergrund gesetzt, auch wenn das Verarbeitungsfehler provoziert (gewollt)
#* Attribut <code>name</code> mit <code>val</code> per <code><nowiki>{{#set:Attribut=Wert}}</nowiki></code> unsichtbar im Hintergrund gesetzt, auch wenn das Verarbeitungsfehler provoziert (gewollt)


== Funktionen Modul:Faktenbox/Common ==
=== <code>setUrlAttr()</code> ===
Setzen eines URL-Attributs (https:/http:).
 
=== <code>setEmailAttr()</code> ===
Setzen eines E-Mail-Attributs (mailto:).
 
=== <code>setTelAttr()</code> ===
Setzen eines Telefon-Attributs (tel:).
 
=== <code>setStandardAttr()</code> ===
Setzen eines Standard-Attributs.
Klammerwerte werden optional abgetrennt und Attribut-Wert wird optional nur angezeigt, aber nicht gesetzt.


=== <code>common()</code> ===
=== <code>getTelUri()</code> ===
Standard-konformes Bilden einer Telefon-URI.
 
=== [[Modul:Faktenbox/Zeilen/RedLinks]] ===
Enthält Tabelle mit Attributen, die nicht als rote Links angezeigt werden sollen.
 
== Funktionen [[Modul:Faktenbox/Common]] ==
 
=== <code>postprocess()</code> ===
Sonstige gemeinsame Dinge anfügen
Sonstige gemeinsame Dinge anfügen
* Klasse
* Klasse
Zeile 98: Zeile 139:
* Kategorien
* Kategorien
* Wartung
* Wartung
Ebenso werden die Attribute final gesetzt, sofern keine transcludierte Unterseite.


=== <code>fbdata()</code> ===
=== <code>getFbdata()</code> ===
Erstellt Faktenbox-Daten-Tabelle.
Erstellt Faktenbox-Daten-Tabelle.
Außerdem:
* Setzt Attribut:Seite und Attribut:TopSeite
* Berechnet und setzt Attribut:Hash auf Basis aller fbdata.pargs
* Prüft, ob die Seite mit der Faktenbox eine transcludierte Unterseite ist, und setzt fbdata.transcluded
=== <code>addWartungsmeldung()</code> ===
Wartungsmeldung zu Attribut:Wartungsmeldung hinzufügen.
Wird final gesetzt in <code>postprocess()</code>.


== <code>fbdata</code>-Daten-table ==
== <code>fbdata</code>-Daten-table ==
Um die Parameter-Übergabe zu obigen Funktionen zu vereinfachen wird die <code>fbdata</code>-Daten-table verwendet, in der folgende Daten abgelegt werden:
Um die Parameter-Übergabe zu obigen Funktionen zu vereinfachen wird die <code>fbdata</code>-Daten-table verwendet, in der folgende Daten abgelegt werden:
* <code>fbdata.frame</code> = <code>frame</code> von <code>Faktenbox(frame)</code>
* <code>fbdata.frame</code> = <code>frame</code> von <code>Faktenbox(frame)</code>
* <code>fbdata.args</code> = <code>frame.args</code>. Beispiel: <code>fbdata.args["Ehemals"]</code> oder <code>fbdata.args.Ehemals</code>
* <code>fbdata.pargs</code> = <code>frame:getParent().args</code>. Beispiel: <code>fbdata.pargs["Ehemals"]</code> oder <code>fbdata.pargs.Ehemals</code>
* <code>fbdata.pargs</code> = <code>frame:getParent().args</code>. Beispiel: <code>fbdata.pargs["Ehemals"]</code> oder <code>fbdata.pargs.Ehemals</code>
* <code>fbdata.workmode </code> = <code>fbdata.pargs["Work"]</code> ist true
* <code>fbdata.klasse</code> Klassen-table. Beispiel Kirche: <code>fbdata.klasse = {"Kirche", "Gebäude"}</code> ("Kirche" ist primäre und "Gebäude" sekundäre Klasse)
* <code>fbdata.klasse</code> Klassen-table. Beispiel Kirche: <code>fbdata.klasse = {"Kirche", "Gebäude"}</code> ("Kirche" ist primäre und "Gebäude" sekundäre Klasse)
* <code>fbdata.kategorie</code> Kategorien-table. Beispiel Kirche: <code>fbdata.kategorie = {"Kirchen", "Gebäude"}</code> ("Kirchen" ist primäre und "Gebäude" sekundäre Kategorie)
* <code>fbdata.kategorie</code> Kategorien-table. Beispiel Kirche: <code>fbdata.kategorie = {"Kirchen", "Gebäude"}</code> ("Kirchen" ist primäre und "Gebäude" sekundäre Kategorie)
* <code>fbdata.kategorie_einzahl</code> Einzahl-Kategorien-table als Alternative zu <code>fbdata.klasse</code>. Beispiel Kirche: <code>fbdata.kategorie_einzahl = {"Kirche", "Gebäude"}</code> ("Kirche" ist primäre und "Gebäude" sekundäre Kategorie)
* <code>fbdata.formular</code> Formular
* <code>fbdata.formular</code> Formular
* Pagesnames
* Pagesnames
** <code>frame.fullpagename</code>
** <code>fbdata.fullpagename</code>
** <code>frame.pagename</code>
** <code>fbdata.pagename</code>
** <code>frame.subpagename</code>
** <code>fbdata.subpagename</code>
* <code>frame.strasse_hnr</code> Untertabelle für Straße/Hausnummer-Daten
* <code>fbdata.strasse_hnr</code> Untertabelle für Straße/Hausnummer-Daten
** <code>frame.strasse_hnr.strasse</code> Untertabelle für Straßen
** <code>fbdata.strasse_hnr.strasse</code> Untertabelle für Straßen
*** <code>frame.strasse_hnr.strasse.name</code> Straßenname
*** <code>fbdata.strasse_hnr.strasse.name</code> Straßenname
*** <code>frame.strasse_hnr.strasse.hausnummer</code> Hausnummern-table dieser Straße
*** <code>fbdata.strasse_hnr.strasse.hausnummer</code> Hausnummern-table dieser Straße
*** <code>frame.strasse_hnr.strasse.suspekt</code> Suspekte Formular-Werte dieser Straße
*** <code>fbdata.strasse_hnr.strasse.suspekt</code> Suspekte Formular-Werte dieser Straße
** <code>frame.strasse_hnr.suspekt </code> Suspekte Formular-Werte aller Straßen
** <code>fbdata.strasse_hnr.suspekt </code> Suspekte Formular-Werte aller Straßen
** <code>frame.strasse_hnr.anzahlGebaeude  </code> Anzahl aller gültigen Straße/Hausnummer-Kombinationen
** <code>fbdata.strasse_hnr.anzahlGebaeude  </code> Anzahl aller gültigen Straße/Hausnummer-Kombinationen
* <code>fbdata.attr</code> Attribute
** <code>fbdata.attr.list</code> = Attribute-Liste (table)
** <code>fbdata.attr.subid</code> = Sobobject-Indentifier
** <code>fbdata.attr.noattr</code> = Attribute nicht setzen Flag
* <code>fbdata.geoobjects</code> = Geo-Objekte von [[Modul:Karte]] gefüllt
* <code>fbdata.transcluded </code> = Faktenbox ist in transcludierte Unterseite
* Ggf. weitere Klassen-abhängige Einträge
* Ggf. weitere Klassen-abhängige Einträge


Zeile 139: Zeile 198:
* [[Modul:Wiki]]
* [[Modul:Wiki]]
* [[Modul:Geo]]
* [[Modul:Geo]]
* [[Modul:Queries]]
* [[Modul:Karte]]
* [[Modul:SMW]]
* [[Modul:LinkFormDatum]]
* [[Modul:LinkFormDatum]]
</div>
</div>