vtIf

(Basic, Pro, Master ab 1.0)

Leitet einen Codeblock ein, der nur unter bestimmten Bedingungen ausgegeben wird.

Verwendung

<!--{{vtIf: %Bedingung}}--> ... <!--{{vtEndIf}}-->

<!--{{vtIf: %Bedingung}}--> ... <!--{{vtElse}}--> ... <!--{{vtEndIf}}-->
%Bedingung

Bedingung, unter der der nachfolgende Codeblock ausgegeben wird.

Hinweise

Die Bedingung besteht aus einem linken und einem rechten Vergleichswert sowie einem Vergleichsoperator (siehe unten). Seit Virthos 3.0.4 ist es möglich, mehrere Bedingungen anzugeben, indem man diese durch ein .and. oder ein .or. miteinander verknüpft. Werden beide Verknüpfungsarten gemischt, hat ein .and. höhere Priorität als ein .or..

Die folgende Tabelle zeigt, welche Vergleichsoperatoren zur Verfügung stehen:

Operator Bedeutung Erläuterung
.eq. equals ist gleich
.neq. not equals ist ungleich
.gt. greater than (Zahl, Datum oder Uhrzeit) ist größer als
.gte. greater than or equal (Zahl, Datum oder Uhrzeit) ist größer als oder gleich
.lt. less than (Zahl, Datum oder Uhrzeit) ist kleiner als
.lte. less than or equal (Zahl, Datum oder Uhrzeit) ist kleiner als oder gleich
.bw. begins with (Zeichenkette) beginnt mit
.ew. ends with (Zeichenkette) endet mit
.cn. contains (Zeichenkette oder Liste) enthält
.ncn. not contains (Zeichenkette oder Liste) enthält nicht
.cn1of. contains 1 of linke und rechte Liste enthalten mind. ein gemeinsames Element
.in. in (Zeichenkette oder Element) befindet sich in
.nin. not in (Zeichenkette oder Element) befindet sich nicht in

Die Vergleichswerte können durch feste Werte oder durch Platzhalter (in einfachen geschweiften Klammern) angegeben werden. Wenn der rechte Vergleichswert durch einen Platzhalter angegeben wird, ist darauf zu achten, dass die schließende Klammer dieses Platzhalters durch ein Leerzeichen von der schließenden Klammer der vtIf-Anweisung getrennt wird. Die Leerzeichen, die in den Beispielen zwischen den Vergleichswerten und den Punkten des Vergleichsoperators eingefügt sind, dienen nur der besseren Lesbarkeit und sind nicht zwingend. Beim Vergleich werden sie ignoriert.

Soll ein Datum als Vergleichswert dienen, muss es in der Form tt.mm.jjjj angegeben werden, eine Uhrzeit in der Form hh:mm. Wenn der Stunden- oder Minutenwert kleiner ist als 10 ist, muss eine Null vorangestellt werden; bei Tages- und Monatswerten ist eine vorangestellte Null nicht erforderlich.

Beim Vergleichen von Zeichenketten ignoriert Virthos die Groß-/Kleinschreibung. Die Bedingung {Name} .eq. meier wäre also auch erfüllt, wenn im Feld Name das Wort "Meier" oder "MEIER" stünde.

Beispiele

<!--{{vtIf: {vtCountPages} .eq. 0 }}-->  
    <p>keine Einträge vorhanden</p>  
<!--{{vtEndIf}}-->

<!--{{vtIf: {Geburtsdatum} .eq. {vtDate:d.m.Y} }}-->  
    <p>Herzlichen Glückwunsch zum Geburtstag, {{Name}}!</p>  
<!--{{vtElse}}-->  
    <p>Guten Tag, {{Name}}</p>  
<!--{{vtEndIf}}-->

<!--  
{{vtIf: {Prioritaet} .eq. 1 }}  
    {{vtSet: Text = "sehr dringend" }}  
{{vtElseIf: {Prioritaet} .eq. 2 }}  
    {{vtSet: Text = "dringend" }}  
{{vtElseIf: {Prioritaet} .eq. 3 }}  
    {{vtSet: Text = "normal" }}  
{{vtElse}}  
    {{vtSet: Text = "unwichtig" }}  
{{vtEndIf}}  
-->

<!--{{vtIf: {Wochentag} .eq. Samstag .or. {Wochentag} .eq. Sonntag }}-->  
    <h1>Schönes Wochenende!</h1>  
<!--{{vtEndIf}}-->

Siehe auch