Die Beschreibung des Assistenten kann alle Elemente einer Sektion mit Bedingungen versehen. Über eine Bedingung lässt sich die ausgegebene HTML-Seite kontextabhängig verändern, indem bestimmte Konfigurationsmöglichkeiten in Abhängigkeit der zuvor getätigten Einstellungen ein- oder ausgeblendet werden.
Die Bedingungen beziehen sich dabei immer auf das vorhergehende Element und bestehen aus der Angabe einer Klasse und einem oder mehreren Bedingungsmustern. Ein Muster wiederum besteht aus zwei Operanden und einem Operator. Hierbei gilt:
- Wenn eine Bedingung mehrere Bedingungsmuster in einer Zeile enthält, wertet der Assistent diesen Ausdruck als ODER-Verknüpfung.
- Wenn die Beschreibung mehrere Bedingungen in separaten Zeilen zu einem übergeordneten Element enthält, wertet der Assistent diesen Ausdruck als UND-Verknüpfung.
Eine Klasse darf beliebig viele Bedingungsmuster und ein Element beliebig viele Bedingungen enthalten. Die folgenden Bedingungen z. B. zeigen die Sektion nur dann an, wenn die interne Variable wizard.test_select1 gleich 1, und wizard.test_select4 oder wizard.test_select5 gleich 0 sind:
section only_if wizard.test_select1, "1", equal only_if wizard.test_select4, "0", equal, wizard.test_select5, "0", equal
Klassen
- only-if: Das vorhergehende Element wird nur ausgeführt oder angezeigt, wenn mindestens eines der folgenden Bedingungsmuster erfüllt ist.
- skip-if: Das vorhergehende Element wird nicht ausgeführt oder angezeigt, wenn alle der folgenden Bedingungsmuster erfüllt sind.
Operanden
- Statische Texte
- Interne Variablen des Assistenten
- Variablen zur Referenzierung von Werten aus der aktuellen Konfiguration des Gerätes (Konfigurations-Variablen)
- Das Zeichen '*' als Platzhalter (Wildcard)
Operatoren
- equal: Prüft, ob die beiden Operanden gleich sind.
- exists: Prüft, ob die angegebene Konfigurations-Variable gesetzt ist, also der Wert des Parameters in der Konfiguration nicht leer ist.
- empty: Prüft, ob der erste Operand leer ist. Der zweite Operand wird als Platzhalter (Wildcard) '*' angegeben.
- contains: Prüft, ob der erste Operand den zweiten Operanden enthält.
- !: Verneint die Bedingung.
Beispiele
Die folgende Bedingung zeigt die Sektion nur dann an, wenn die interne Variable 'wizard.test_select' gleich '0' ist.
section only_if wizard.test_select, "0", equal
Die folgende Bedingung setzt die interne Variable 'wizard.intranet_name' auf den Wert 'INTRANET', wenn diese Variable bisher leer ist.
set wizard.intranet_name, "INTRANET" only_if wizard.intranet_name, *, empty
Die folgende Bedingung setzt die interne Variable 'wizard.target_1' auf den Wert 'ZIEL_1', wenn die interne Variable 'wizard.select_target' entweder den Wert '1' oder den Wert '5' hat.
set wizard.target_1,"ZIEL_1" only_if wizard.select_target,"1",equal,wizard.select_target,"5",equal