News (06 Aug 2024): Das Wiki läuft jetzt auf einem neuen Server. Aufgrund eines Upgrades von PHP mussten die Wiki-Software und die DPL-Erweiterung aktualisiert werden. Bitte meldet Fehler auf der Hauptseiten-Diskussion.

Benutzer:Sammy/Sandkasten/3: Unterschied zwischen den Versionen

Aus GuildWiki
Zur Navigation springenZur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Benutzer:Sammy/Sandkasten/4|gww=Gavel of the Nephilim (unique)}}
<includeonly>
{{#if: {{{optionen|}}} |
| {{#ifexpr: {{#if: {{{datum|}}} | 1 | 0}} = 0 or {{#ifeq: {{{datum|}}} | aktuell | 0 | 1}} = 0
    | {{{{PAGENAME}}|datum={{{{PAGENAME}}|optionen=aktuellermontag}}|angabe={{{angabe|}}}}}
    | {{#switch: {{{angabe|}}}
        | #default = PARAMETERFEHLER: "angabe" ENTHÄLT UNGÜLTIGEN WERT
        | anzahl = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=menge}}
        | karten-name = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenname}}
        | karten-beschreibung = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenbeschreibung}}
 
        | plural =
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gegenstand}}
            }}
        | kartenbeschreibung =
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gebietsname}}
            }}
        | extkartenbeschreibung =
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            }}
        | gegenstand
        | menge
        | dialog
        | kartenname
        | gebietsname =
            {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe={{{angabe|}}}}}
        }}
    }}
}}
{{#if: {{{optionen|}}}
| {{#switch: {{{optionen|}}}
    | aktuellermontag =
        {{#switch: {{#time: w | {{CURRENTTIMESTAMP}}}}
        | 0 = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 6 days ago}}
        | 1 =
            {{#ifexpr: {{#time: G | {{CURRENTTIMESTAMP}}}} >= 15
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}}}}
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 1 week ago}}
            }}
        | #default = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} {{#expr: {{#time: w | {{CURRENTTIMESTAMP}}}} - 1}} days  ago}}
        }}
    }}
}}
</includeonly>
 
 
<noinclude>---------------------------------------
 
 
 
Diese Vorlage ist gedacht zur Vorschaltung vor die Nicholas-Datenbank, momentan untergebracht in [[Benutzer:Sammy/Sandkasten/2]].<br>
Übergeben werden können folgende Parameter:
* <code>optionen=</code>
:# <code>aktuellermontag</code><br>Gibt den aktuellen Nicholas-Montag in der Form dd.mm.yyyy zurück. Alle anderen Parameter werden ignoriert.
* <code>datum=</code>
:# <code>dd.mm.yyyy</code><br>Das Datum eines Nicholas-Standortwechsel-Tages in der Form dd.mm.yyyy.
:# <code>current</code><br>Ist gleichbedeutend mit dem Datum des aktuellen Nicholas-Montages.
:# ''Parameter ungesetzt''<br>Wenn der Parameter leergelassen oder erst gar nicht gesetzt wird, ist dies gleichbedeutend mit dem Wert "current".
* <code>angabe=</code>
:# <code>gegenstand</code> - Der Name des gesammelten Gegenstandes im Singular.
:# <code>plural</code> - [''optional''] Der Name des gesammelten Gegenstandes im Plural. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von <code>gegenstand</code> genommen.)
:# <code>menge</code> - Die Anzahl Gegenstände, die zum Eintauschen eines Geschenkes benötigt werden.
:# <code>anzahl</code> - Gleichbedeutend mit <code>menge</code>.
:# <code>dialog</code> - Nicholas' Dialog.
:# <code>kartenname</code> - Der Name der Bilddatei, welche die Karte und den Weg zu Nicholas darstellt.
:# <code>karten-name</code> - Gleichbedeutend mit <code>kartenname</code>.
:# <code>gebietsname</code> - Der Name des Artikels des Gebietes, in welchem Nicholas steht.
:# <code>kartenbeschreibung</code> - [''optional''] Ein Alternativtext für den Titel des Gebietes im Gebietslink. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von <code>gebietsname</code> genommen.)
:# <code>extkartenbeschreibung</code> - [''optional''] Ein Alternativtext für die Beschreibung der Karte, anstatt von <code>kartenbeschreibung</code>. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von <code>kartenbeschreibung</code> genommen.)
 
Erklärung des Codes:
<nowiki>
{{#if: {{{optionen|}}} |                                  // Sind Optionsparameter übergeben worden?
|                                                        // Wenn nein:
    {{#ifexpr:                                            // Wenn Parameter "datum" nicht gesetzt ist oder den Wert "aktuell" hat:
        {{#if: {{{datum|}}} | 1 | 0}} = 0
        or {{#ifeq: {{{datum|}}} | aktuell | 0 | 1}} = 0
                                                          // Rufe dich selbst auf mit dem aktuellen Montag (ermittelt über Selbst-
                                                          //    aufruf mit Parameter "optionen=aktuellermontag") als Datum
    | {{{{PAGENAME}}|datum={{{{PAGENAME}}|optionen=aktuellermontag}}|angabe={{{angabe|}}}}}
                                                          // Wenn das Datum feststeht:
    | {{#switch: {{{angabe|}}}                            // Überprüfe Parameter "angabe" auf Wertegültigkeit:
        | #default = PARAMETERFEHLER: "angabe" ENTHÄLT UNGÜLTIGEN WERT // Parameter "angabe" hat keinen vorgesehenen Wert
                                                          // Alternative Parameternamen
        | anzahl = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=menge}}
        | karten-name = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenname}}
        | karten-beschreibung = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenbeschreibung}}
                                                          // Wenn "plural" beim entsprechenden Eintrag nicht gesetzt ist, nimm
        | plural =                                        //    "gegenstand".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gegenstand}}
            }}
                                                          // Wenn "kartenbeschreibung" beim entsprechenden Eintrag nicht gesetzt
        | kartenbeschreibung =                            //    ist, nimm "gebietsname".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gebietsname}}
            }}
                                                          // Wenn "extkartenbeschreibung" beim entsprechenden Eintrag nicht gesetzt
        | extkartenbeschreibung =                        //    ist, nimm "kartenbeschreibung".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            }}
        | gegenstand                                      // Gültige Werte, die einfach durchgereicht werden.
        | menge
        | dialog
        | kartenname
        | gebietsname =
            {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe={{{angabe|}}}}}
        }}
    }}
}}
{{#if: {{{optionen|}}}                                    // Sind Optionsparameter übergeben worden?
| {{#switch: {{{optionen|}}}                              // Wenn ja: Überprüfe Parameter "optionen".
    | aktuellermontag =                                  // Wenn "optionen=aktuellermontag" gib aktuellen Nicholas-Montag zurück.
        {{#switch: {{#time: w | {{CURRENTTIMESTAMP}}}}    // Überprüfung von Wochentag als numerischer Wert (Sonntag = 0):
        | 0 = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 6 days ago}} // Sonntag (0)
        | 1 =                                                    // Montag (1)
            {{#ifexpr: {{#time: G | {{CURRENTTIMESTAMP}}}} >= 15 // Wenn es nach 15 Uhr (UTC) ist -
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}}}}           // dann nimm heute,
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 1 week ago}} // ansonsten den Montag vor einer Woche.
            }}
                                                                // Für alle übrigen Tage: Nimm einfach den letzten Montag.
        | #default = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} {{#expr: {{#time: w | {{CURRENTTIMESTAMP}}}} - 1}} days  ago}}
        }}
    }}
}}
</nowiki>
</noinclude>

Aktuelle Version vom 6. Januar 2010, 23:34 Uhr




Diese Vorlage ist gedacht zur Vorschaltung vor die Nicholas-Datenbank, momentan untergebracht in Benutzer:Sammy/Sandkasten/2.
Übergeben werden können folgende Parameter:

  • optionen=
  1. aktuellermontag
    Gibt den aktuellen Nicholas-Montag in der Form dd.mm.yyyy zurück. Alle anderen Parameter werden ignoriert.
  • datum=
  1. dd.mm.yyyy
    Das Datum eines Nicholas-Standortwechsel-Tages in der Form dd.mm.yyyy.
  2. current
    Ist gleichbedeutend mit dem Datum des aktuellen Nicholas-Montages.
  3. Parameter ungesetzt
    Wenn der Parameter leergelassen oder erst gar nicht gesetzt wird, ist dies gleichbedeutend mit dem Wert "current".
  • angabe=
  1. gegenstand - Der Name des gesammelten Gegenstandes im Singular.
  2. plural - [optional] Der Name des gesammelten Gegenstandes im Plural. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von gegenstand genommen.)
  3. menge - Die Anzahl Gegenstände, die zum Eintauschen eines Geschenkes benötigt werden.
  4. anzahl - Gleichbedeutend mit menge.
  5. dialog - Nicholas' Dialog.
  6. kartenname - Der Name der Bilddatei, welche die Karte und den Weg zu Nicholas darstellt.
  7. karten-name - Gleichbedeutend mit kartenname.
  8. gebietsname - Der Name des Artikels des Gebietes, in welchem Nicholas steht.
  9. kartenbeschreibung - [optional] Ein Alternativtext für den Titel des Gebietes im Gebietslink. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von gebietsname genommen.)
  10. extkartenbeschreibung - [optional] Ein Alternativtext für die Beschreibung der Karte, anstatt von kartenbeschreibung. (Ist der Wert beim betreffenden Eintrag nicht gesetzt, wird der Wert von kartenbeschreibung genommen.)

Erklärung des Codes:

{{#if: {{{optionen|}}} |                                  // Sind Optionsparameter übergeben worden?
|                                                         // Wenn nein:
    {{#ifexpr:                                            // Wenn Parameter "datum" nicht gesetzt ist oder den Wert "aktuell" hat:
        {{#if: {{{datum|}}} | 1 | 0}} = 0
        or {{#ifeq: {{{datum|}}} | aktuell | 0 | 1}} = 0
                                                          // Rufe dich selbst auf mit dem aktuellen Montag (ermittelt über Selbst-
                                                          //     aufruf mit Parameter "optionen=aktuellermontag") als Datum
    | {{{{PAGENAME}}|datum={{{{PAGENAME}}|optionen=aktuellermontag}}|angabe={{{angabe|}}}}}
                                                          // Wenn das Datum feststeht:
    | {{#switch: {{{angabe|}}}                            // Überprüfe Parameter "angabe" auf Wertegültigkeit:
        | #default = PARAMETERFEHLER: "angabe" ENTHÄLT UNGÜLTIGEN WERT // Parameter "angabe" hat keinen vorgesehenen Wert
                                                          // Alternative Parameternamen
        | anzahl = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=menge}}
        | karten-name = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenname}}
        | karten-beschreibung = {{{{PAGENAME}}|datum={{{datum|}}}|angabe=kartenbeschreibung}}
                                                          // Wenn "plural" beim entsprechenden Eintrag nicht gesetzt ist, nimm
        | plural =                                        //     "gegenstand".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=plural}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gegenstand}}
            }}
                                                          // Wenn "kartenbeschreibung" beim entsprechenden Eintrag nicht gesetzt
        | kartenbeschreibung =                            //     ist, nimm "gebietsname".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=gebietsname}}
            }}
                                                          // Wenn "extkartenbeschreibung" beim entsprechenden Eintrag nicht gesetzt
        | extkartenbeschreibung =                         //     ist, nimm "kartenbeschreibung".
            {{#if: {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=extkartenbeschreibung}}
            | {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe=kartenbeschreibung}}
            }}
        | gegenstand                                      // Gültige Werte, die einfach durchgereicht werden.
        | menge
        | dialog
        | kartenname
        | gebietsname =
            {{Benutzer:Sammy/Sandkasten/2|datum={{{datum|}}}|angabe={{{angabe|}}}}}
        }}
    }}
}}
{{#if: {{{optionen|}}}                                    // Sind Optionsparameter übergeben worden?
| {{#switch: {{{optionen|}}}                              // Wenn ja: Überprüfe Parameter "optionen".
    | aktuellermontag =                                   // Wenn "optionen=aktuellermontag" gib aktuellen Nicholas-Montag zurück.
        {{#switch: {{#time: w | {{CURRENTTIMESTAMP}}}}    // Überprüfung von Wochentag als numerischer Wert (Sonntag = 0):
        | 0 = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 6 days ago}} // Sonntag (0)
        | 1 =                                                    // Montag (1)
            {{#ifexpr: {{#time: G | {{CURRENTTIMESTAMP}}}} >= 15 // Wenn es nach 15 Uhr (UTC) ist -
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}}}}            // dann nimm heute,
            | {{#time: d.m.Y | {{CURRENTTIMESTAMP}} 1 week ago}} // ansonsten den Montag vor einer Woche.
            }}
                                                                 // Für alle übrigen Tage: Nimm einfach den letzten Montag.
        | #default = {{#time: d.m.Y | {{CURRENTTIMESTAMP}} {{#expr: {{#time: w | {{CURRENTTIMESTAMP}}}} - 1}} days  ago}}
        }}
    }}
}}