Vorlagenprogrammierung Diskussionen Lua Unterseiten
Modul Deutsch English

Modul: Dokumentation

Vorlage:Gebiet@de-CH – Modul zur Analyse ob ein Gebiet schweizbezogen ist.

Funktionen für Vorlagen

Bearbeiten
f
Standardaufgabe: Gebiet analysieren.
Parameter:
1
Gebiet
Ergebnis:
1 wenn schweizbezogen
leer wenn nicht
failsafe
Versionsmanagement

Die Failsafe-Schnittstelle erlaubt den damit ausgerüsteten Modulen in globaler Verteilung

  • sicherzustellen, dass eine von einer Vorlage oder einem Modul benötigte Funktion in der lokalen Kopie eines Bibliotheksmoduls vorhanden ist, und ggf. auch in einer erforderlichen Mindestversion;
  • die globale Aktualisierung und Verknüpfung von Modulen über Wikidata zu verwalten.

Die Failsafe-Schnittstelle liegt sowohl auf Ebene der Vorlagen wie auch in direktem Lua-Zugriff vor.

Die Funktionen sind im Einzelnen (nicht alle werden bereits überall in vollem Umfang unterstützt):

Parameter
Wert Ergebnis aktuell
nichts
false
lokale Version »2023-11-08«
Mindest­version Mindestversionsbezeichnung
Datum im ISO-Format

Es wird verglichen, ob das aktuelle Modul diese Version oder später erfüllt.

  • leer, falls Mindestversion nicht erfüllt
  • 2001-01-01 → »2023-11-08«
  • 2099-01-01 → »«
wikidata Versionsbezeichnung der globalen Mutter (d:Q123374901)
  • Versionsbezeichnung auf Wikidata
  • lokal, falls dort keine gefunden
»2023-11-08«
item ID des Wikidata-Items
  • leer, falls nicht definiert
»Q123374901«
~ Übereinstimmung der lokalen mit der auf Wikidata registrierten Versionsbezeichnung
  • leer, falls aktuell
  • Versionsbezeichnung auf Wikidata, falls ungleich
»«
@ Ist die aktuelle (Modul-)Seite richtig mit Wikidata verknüpft?
  • leer, falls mit dem richtigen Item verknüpft
  • Item-ID, falls nicht
Der Rückgabewert ist in der Vorlagenprogrammierung leer und per Lua false; andernfalls die angegebene Zeichenkette.

Verwendung

Bearbeiten

Funktionen für Lua-Module

Bearbeiten

Einbindung in andere Module:

local lucky, deCH = pcall( require, "Module:Vorlage:Gebiet@de-CH" )
if type( deCH ) == "table" then
    deCH = deCH()
else
    -- Fehlerfall; deCH enthält Fehlermeldung
    return "<span class=\"error\">" .. deCH .. "</span>"
end

Danach stehen zur Verfügung:

deCH.f(s)
Standardaufgabe
  • s
    string
Rückgabewert: boolean
deCH.failsafe(atleast)
Versionsbezeichnung
  • atleast
    optional
    nil oder Mindestversion oder ~
Rückgabewert: string oder false

Abhängigkeiten

Bearbeiten

Keine.