Seite 1 von 1

Templates: %ws_compare% schachtelbar?

Verfasst: 22 Jun 2005 22:07
von RKnud
Kollegen,
kann ich in Templates die Anweisung ws_compare verschachteln?
In diesem Teil meiner Page will ich (innerhalb eines Monats-Templates) einen Kalender bauen (Tabelle 3x4 mit Monatsnamen), der den direkten Link zu einem Monat des Jahres erlaubt, aus dem der gerade betrachtete Monat stammt. Zwei Einschränkungen:
a) in 2004 habe ich nur Monate ab September,
b) für die Folgejahre kann ich nur Monate verlinken, die bereits vergangen sind.
Ich versuche in folgender Abfrage zunächst zu klären, ob das Jahr des Monats größer als 2004 ist. Wenn ja, dann soll geprüft werden, ob der aktuelle Monat größer als der hier zu verlinkende ist (z.B. Mar).
Kein Link für Jahr 2004 und %ws_month%<= 3.
Warum funktioniert das nicht?

Code: Alles auswählen

<TD>%ws_compare&#91;1&#93;=%ws_year%~2004~%ws_compare&#91;1&#93;=%ws_month%~3~<A href="/%ws_year%/his%ws_year%03.html">Mar</A>~Mar%~Mar%</TD>

liest sich doch so&#58;

<TD>%ws_compare&#91;1&#93;=%ws_year%~2004
      ~
           %ws_compare&#91;1&#93;=%ws_month%~3
           ~
              <A href="/%ws_year%/his%ws_year%03.html">Mar</A>
           ~
               Mar
           %
      ~
          Mar
     %</TD>

Verfasst: 22 Jun 2005 22:38
von RKnud
Kann das an der beschränkung der Template-Zeilen liegen?
Oder sind damit nur Zeilen ala %templatebgin% gemeint? Welche Variable in der CFG wäre zu ändern??

Verfasst: 23 Jun 2005 09:07
von weneu
Hallo Reiner,
ich fürchte, man kann die ws_compare so nicht verschachteln (Problem: zweimaliges Vorkommen in einer Zeile)
Leider liegen mir auch keine näheren Dokumentationen zu diesem Poblem vor.
Du könntest aber dieses Problem insofern vielleicht umgehen (reine Vermutung von mir), dass du die Anweisung ws_setmem einsetzt.
Also zuerst mit ws_compare vergleichen und dann ws_setmem zuweisen. Nun anstatt des 2. compare-Befehls die ws_getmem-Anweisung verwenden. Hier wird wohl nur Ausprobieren helfen.