Allgemeine Funktionen: Unterschied zwischen den Versionen

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen
 
(9 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 16: Zeile 16:
 
| Liefert <code>true</code>, wenn das Objekt ein numerischer Wert ist. Die Abfrage, ob ein Objekt KEINE Zahl ist, kann durch ein vorangestellte "!" erreicht werden.  
 
| Liefert <code>true</code>, wenn das Objekt ein numerischer Wert ist. Die Abfrage, ob ein Objekt KEINE Zahl ist, kann durch ein vorangestellte "!" erreicht werden.  
 
| 1
 
| 1
 +
|-
 +
| <code>isEmail([[Object]]&nbsp;object)</code>
 +
| [[Boolean]]
 +
| Liefert <code>true</code>, wenn das Objekt einer gültigen E-Mail-Adresse entspricht.
 +
| 2.30
 
|-
 
|-
 
| <code>evalText([[Text]]&nbsp;text)</code>
 
| <code>evalText([[Text]]&nbsp;text)</code>
Zeile 31: Zeile 36:
 
| Evaluiert den Ausdruck und liefert das Ergebnis zurück.
 
| Evaluiert den Ausdruck und liefert das Ergebnis zurück.
 
| 1
 
| 1
 +
|-
 +
| <code>randomUUID()</code>
 +
| [[String]]
 +
| Erzeugt eine UUID
 +
| 2.12
 +
|-
 +
| <code>coalesce([[Object]]&nbsp;object, [...])</code>
 +
| [[Object]]
 +
| Gibt das erste Object zurück welches nicht zu <code>null</code> oder Leerstring evaluiert werden kann
 +
| 2.14.1
 +
|-
 +
| <code>isList([[Object]]&nbsp;object)</code>
 +
| [[Boolean]]
 +
| Liefert <code>true</code>, wenn das übergebene Objekte eine Liste ist
 +
| 2.17
 +
|-
 +
| <code>isMap([[Object]]&nbsp;object)</code>
 +
| [[Boolean]]
 +
| Liefert <code>true</code>, wenn das übergebene Objekte eine Map ist
 +
| 2.17
 +
|-
 +
| <code>color([[String]]&nbsp;hex)</code>
 +
| [[Color]]
 +
| Liefert ein [[Color]]-Objekt anhand eines RGB-Hex-Wertes (#12ab34)
 +
| 2.31
 +
|-
 +
| <code>collection([[Object]]&nbsp;obj, ...)</code>
 +
| [[Collection]]
 +
| Liefert ein [[Collection]]-Objekt welches alle übergebenen Werte beinhaltet
 +
| 2.38
 +
|-
 +
| <code>translatable([[Object]]&nbsp;object)</code>
 +
| [[TranslatableText]]
 +
| Markiert einen Text als übersetzbar
 +
| 3.9
 +
|-
 
|}
 
|}
  
Zeile 76: Zeile 117:
 
  my_int_2 = is not a number
 
  my_int_2 = is not a number
 
</source>
 
</source>
 +
 +
===coalesce===
 +
Template Quelltext
 +
<source lang="xml">
 +
 +
<sp:set name="foobar" value="">
 +
<sp:set name="foo" value="123" />
 +
<sp:map name="frequencies" action="put" key="C" object="system.template"/>
 +
 +
"<sp:print name="coalesce(${!{gui.informations}}, ${barfoo}, ${frequencies.C}, 'teststring', 456)" />"    = "100010100000001010-2000" [!{gui.informations}]
 +
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.C}, 'teststring', 456)" />"      = "100010100000002098-6000" [system.template]
 +
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.D}, 'teststring', 456)" />"      = "teststring"
 +
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.D}, ' ', 'teststring', 456)" />" = " "
 +
</source>
 +
 +
===collection===
 +
Template Quelltext
 +
<source lang="xml">
 +
 +
<sp:set name="_col" object="collection(${system.information}, 123, 'foobar')" />
 +
<sp:print name="_col[0].name" />
 +
<sp:print expression="${_col[1]} + 456" />
 +
<sp:if name="_col[2]" eq="foobar">
 +
  ...
 +
</sp:if>
 +
 +
<sp:if name="collection('Hans', 'Michael', 'Peter')" contains="Peter">
 +
  ...
 +
</sp:if>
 +
 +
 +
</source>
 +
 +
  
 
<noinclude>
 
<noinclude>
 
[[Category:Funktionen]]
 
[[Category:Funktionen]]
 
</noinclude>
 
</noinclude>

Aktuelle Version vom 21. Februar 2023, 14:33 Uhr

Beschreibung

Allgemeine Funktionen sind Funktionen die sich nicht auf bestimmte Objekte beziehen und allgemein anwendbar sind

Funktionen

Methode Rückgabewert Beschreibung ab IES Version
isNull(Object object) Boolean Liefert true, wenn das Objekt nicht existiert eine leere Zeichenkette oder ein leeres Artikelfeld ist. Die Abfrage, ob ein Objekt NICHT existiert kann durch ein vorangestellte "!" erreicht werden. 1
isNumber(Object object) Boolean Liefert true, wenn das Objekt ein numerischer Wert ist. Die Abfrage, ob ein Objekt KEINE Zahl ist, kann durch ein vorangestellte "!" erreicht werden. 1
isEmail(Object object) Boolean Liefert true, wenn das Objekt einer gültigen E-Mail-Adresse entspricht. 2.30
evalText(Text text) String Evaluiert den Text und liefert das Ergebnis zurück. 1
evalExpression(Expression expression) Number Evaluiert den Ausdruck und liefert das Ergebnis zurück. 1
evalCondition(Condition condition) Boolean Evaluiert den Ausdruck und liefert das Ergebnis zurück. 1
randomUUID() String Erzeugt eine UUID 2.12
coalesce(Object object, [...]) Object Gibt das erste Object zurück welches nicht zu null oder Leerstring evaluiert werden kann 2.14.1
isList(Object object) Boolean Liefert true, wenn das übergebene Objekte eine Liste ist 2.17
isMap(Object object) Boolean Liefert true, wenn das übergebene Objekte eine Map ist 2.17
color(String hex) Color Liefert ein Color-Objekt anhand eines RGB-Hex-Wertes (#12ab34) 2.31
collection(Object obj, ...) Collection Liefert ein Collection-Objekt welches alle übergebenen Werte beinhaltet 2.38
translatable(Object object) TranslatableText Markiert einen Text als übersetzbar 3.9

Beispiele

IsNull im Verbindung mit sp:if

Template Quelltext

<sp:set name="my_value_1" value="hello world"/>
<sp:set name="my_value_2" value=""/>

<sp:if condition="!isNull(${my_value_1})">
  my_value_1 = <sp:print name="my_value_1"/>
</sp:if>
<sp:if condition="isNull(${my_value_2})">
  my_value_2 = isNull
</sp:if>

Ausgabe

 my_valaue_1 = hello world
 my_valaue_2 = isNull

IsNumber im Verbindung mit sp:if

Template Quelltext

<sp:set name="my_int_1" value="123"/>
<sp:set name="my_int_2" value="hello world"/>

<sp:if condition="isNumber(${my_int_1})">
  my_int_1 = <sp:print name="my_int_1"/>
</sp:if>
<sp:if condition="!isNumber(${my_int_2})">
  my_int_2 = is not a number
</sp:if>

Ausgabe

 my_int_1 = 123
 my_int_2 = is not a number

coalesce

Template Quelltext

<sp:set name="foobar" value="">
<sp:set name="foo" value="123" />
<sp:map name="frequencies" action="put" key="C" object="system.template"/>

"<sp:print name="coalesce(${!{gui.informations}}, ${barfoo}, ${frequencies.C}, 'teststring', 456)" />"     = "100010100000001010-2000" [!{gui.informations}]
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.C}, 'teststring', 456)" />"      = "100010100000002098-6000" [system.template]
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.D}, 'teststring', 456)" />"      = "teststring" 
"<sp:print name="coalesce(${!{existiert.nicht}}, ${barfoo}, ${frequencies.D}, ' ', 'teststring', 456)" />" = " "

collection

Template Quelltext

<sp:set name="_col" object="collection(${system.information}, 123, 'foobar')" />
<sp:print name="_col[0].name" />
<sp:print expression="${_col[1]} + 456" />
<sp:if name="_col[2]" eq="foobar">
  ...
</sp:if>

<sp:if name="collection('Hans', 'Michael', 'Peter')" contains="Peter">
  ...
</sp:if>