Vorlage:boolor

Aus Cowboy’s Wiki
Zur Navigation springen Zur Suche springen



[Vorlagenprogrammierung] Logische Oder-Verknüpfung von zwei oder mehr Werten; ein nicht-leerer String (1, also „wahr“), wenn mindestens ein Parameter weder leer noch 0 ist

Vorlagenparameter

1. Wert1
1. Wert zur Verknüpfung
2. Wert2
2. Wert zur Verknüpfung
weiterer Wert3
Weiterer Wert zur Verknüpfung
weitere Werte4
Beliebig viele weitere Werte zur Verknüpfung

[Vorlagenprogrammierung] Logische Oder-Verknüpfung von zwei oder mehr Werten; ein nicht-leerer String (1, also „wahr“), wenn mindestens ein Parameter weder leer noch 0 ist

Vorlagenparameter

ParameterBeschreibungTypStatus
1. Wert1

1. Wert zur Verknüpfung

Wahrheitswerterforderlich
2. Wert2

2. Wert zur Verknüpfung

Wahrheitswerterforderlich
weiterer Wert3

Weiterer Wert zur Verknüpfung

Wahrheitswertoptional
weitere Werte4

Beliebig viele weitere Werte zur Verknüpfung

Wahrheitswertoptional

Kopiervorlage

{{boolor| | }}
{{boolor| | | }}
{{boolor| | | | }}
{{boolor| | | | | }}
{{boolor| | | | | | }}

Hinweise

Im Unterschied zur Wikisyntax werden nicht nur leere Strings als „false“ betrachtet, sondern auch solche, welche 0, - oder false enthalten.

Alle Parameter müssen erst ausgewertet werden, bevor sie verknüpft werden können. Das ist ein Problem, wenn die Ermittlung aufwändig ist („teuer“ oder sonst performancekritisch). Besser ist dann:

{{#if: {{#if: {{#switch: {{A-Vorlage}}
                |0|-|false|=
                |#default=1}}
         | 1
         | {{#if: {{#switch: {{B-Vorlage}}
                    |0|-|false|=
                    |#default=1}}
             | 1
             | {{#if: {{#switch: {{C-Vorlage}}
                        |0|-|false|=
                        |#default=1}}
                 | 1
               }}
           }}
       }}
  | <Aktion>
}}

Die bestimmenden Kriterien „A-Vorlage“, „B-Vorlage“ usw. sollten so angeordnet werden, dass die am einfachsten auszuwertenden zuerst analysiert werden. Liefert eine von ihnen „wahr“, so ist der gesamte Ausdruck wahr. Zum Schluss kommt hier C-Vorlage, jedoch erst dann, wenn keine der vorangehenden ausgelöst hatte.

Beispiele

Parameterliste Erwartet Generiert
{{boolor}} »« »«
{{boolor|}} »« »«
{{boolor| |}} »« »«
{{boolor| |0}} »« »«
{{boolor| false | - }} »« »«
{{boolor| |0|1|-}} »1« »1«
{{boolor|xyz}} »1« »1«

Siehe auch

Lua

Verwendetes Modul: Expr #templatePars