$wsActions
In diesem Abschnitt werden die verfügbaren Variablen und Tags des $wsActions Moduls beschrieben, mit denen Sie Aktionen im Frontend ausführen und deren Ergebnis auswerten können.
Aktionen ermöglichen es, Änderungen im Shop durchzuführen, wie z.B. Produkte in den Warenkorb zu legen, Formulare abzusenden oder den Nutzer ein- und auszuloggen. Sie bilden die Schnittstelle zwischen dem Frontend und der Shop-Logik. In diesem Abschnitt erfahren Sie, wie Sie Aktionen erstellen, ausführen und deren Ergebnisse auswerten können.
Inhaltsverzeichnis
- 1 Modulübersicht
- 2 Variablen
- 2.1 $wsActions.csrfToken
- 2.2 $wsActions.current
- 2.2.1 $wsActions.current.csrf
- 2.2.2 $wsActions.current.id
- 2.2.3 $wsActions.current.name
- 2.2.4 $wsActions.current.tag
- 2.2.5 $wsActions.current.params
- 2.2.6 $wsActions.current.success
- 2.2.7 $wsActions.current.successinfo
- 2.2.8 $wsActions.current.error
- 2.2.9 $wsActions.current.errors
- 2.2.10 $wsActions.current.errorsByField
- 2.2.11 $wsActions.current.globalErrors
- 3 Methoden
- 4 Weiterführende Links
Modulübersicht
Beispiel / Ausschnitt über $wsActions
{{= $wsActions | json }}
JSON-Ausgabe
{
"create": "ƒ()",
"csrfToken": "...",
"current": {
"csrf": "...",
"error": true/false,
"errors": [
{
"code": "...",
"field": "...",
"subCode": "...",
"text": "..."
}
],
"errorsByField": { },
"globalErrors": [...],
"id": "...",
"name": "...",
"params": { },
"success": true/false,
"successInfo": { },
"tag": "..."
},
"url": "ƒ()"
}Anmerkung: “f()” kennzeichnet eine Funktion. current ist null, wenn keine Aktion ausgeführt wurde.
Variablen und Methoden in der Übersicht
Name | Rückgabe-Typ | Beschreibung |
|---|---|---|
| string | Enthält das |
| map | Bietet Zugriff auf Informationen zur Aktion, die gerade ausgeführt wurde. |
| string | CSRF-Token. |
| string | ID der Aktion. |
| string | Name der Aktion. |
| string | Enthält das vergebene Tag. |
| map | Bereits übergebene Parameter-Werte als Map. |
| bool | Gibt aus, ob die Aktion erfolgreich war. |
| map | Info vom Shop bei erfolgreicher Aktion. |
| bool | Gibt aus, ob ein Fehler aufgetreten ist. |
| list | Liste mit allen aufgetretenen Fehlern. |
| string | Fehler-Code. |
| string | Optionaler Fehler-Code zur Spezifikation von |
| string | Feld, bei dem der Fehler aufgetreten ist. |
| string | Fehlertext, der über die Konfiguration angegeben ist. |
| map | Fehler, die einem Feld zugeordnet sind. |
| list | Liste mit Fehlern, die keinem Feld zuzuordnen sind. |
| map | Erstellt ein Aktions-Objekt zur Verwendung in Formularen. |
| string | Erstellt eine URL, mit der eine bestimmte Aktion ausgeführt werden kann. |
Variablen
$wsActions.csrfToken
Enthält das CSRF-Schutz-Token für die aktuelle Sitzung. Es muss bei Aktionen als Parameter wscsrf mitgeschickt werden, damit die Anfrage akzeptiert wird.
CSRF-Token: {{= $wsActions.csrfToken }}
$wsActions.current
Enthält Informationen zur Aktion, die im aktuellen Kontext ausgeführt wurde (z.B. Erfolg/Fehler und Meldungen). Ist null, wenn keine Aktion ausgeführt wurde.
{{ if $wsActions.current }}
// Eine Aktion wurde ausgeführt
{{ /if }}
$wsActions.current.csrf
Gibt den CSRF-Token der gerade ausgeführten Aktion aus.
CSRF-Token: {{= $wsActions.current.csrf }}
$wsActions.current.id
Gibt die eindeutige ID der Aktion aus. Das Format ist <ActionName>:<ActionTag>, wenn ein Tag vergeben wurde, ansonsten <ActionName>.
Aktions-ID: {{= $wsActions.current.id }}
$wsActions.current.name
Gibt den Namen der Aktion aus.
{{ if $wsActions.current.name == "Login" }}
// Login-Aktion wurde ausgeführt
{{ /if }}$wsActions.current.tag
Gibt das vergebene Tag der Aktion aus, falls vorhanden.
Tag: {{= $wsActions.current.tag }}Dieses Tag wird aktuell nicht verwendet.
$wsActions.current.params
Gibt bereits übergebene Parameter-Werte (je nach Aktion) aus.
{{ if $wsActions.current.params.productId }}
Produkt-ID: {{= $wsActions.current.params.productId }}
{{ /if }}
$wsActions.current.success
Gibt aus, ob die aktuelle Aktion erfolgreich war.
Beispiel, das prüft, ob das Hinzufügen zum Warenkorb erfolgreich war:
{{ if $wsActions.current.success }}
// Aktion war erfolgreich
{{ /if }}
$wsActions.current.successinfo
Gibt bei einer erfolgreich ausgeführten Aktion eine Map mit zusätzliche Informationen vom Shop aus.
{{ if $wsActions.current.success and $wsActions.current.successInfo }}
// Erfolgsinformationen verfügbar
{{ /if }}
$wsActions.current.error
Gibt aus, ob bei der aktuellen Aktion ein Fehler aufgetreten ist.
{{ if $wsActions.current.error }}
// Es ist ein Fehler aufgetreten
{{ /if }}
$wsActions.current.errors
Gibt eine Liste mit genaueren Informationen zu aufgetretenen Fehlern aus.
{{ foreach $myErrorVariable in $wsActions.current.errors }}
{{= $myErrorVariable.text }}
{{ /foreach }}$wsActions.current.errorsByField
Gibt Fehler aus, die einem Feld zugeordnet sind.
{{ if $wsActions.current.errorsByField.zip }}
// Fehler im Feld "zip"
{{ /if }}
$wsActions.current.globalErrors
Gibt eine Liste mit Fehlern aus, die keinem Feld zuzuordnen sind.
{{ if $wsActions.current.globalErrors }}
// Globale Fehler aufgetreten
{{ /if }}
Methoden
$wsActions.create()
Erstellt ein Aktions-Objekt zur Verwendung in Formularen.
Signatur$wsActions.create(actionName, paramDefaults, target, tag)
Rückgabemap – Action-Objekt (Map „Action“).
Parameter
Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| string | ja | Name der Aktion, die ausgeführt werden soll. |
| map | nein | Eine Map mit Default-Parametern, die beim Ausführen der Aktion noch geändert werden können (Bsp. default-Menge, bei Produkt in Warenkorb legen). |
| string | nein | Zielseite nach erfolgreich durchgeführter Aktion. |
| string | nein | Frei wählbare Bezeichnung, um mehrere Aktionen auseinander zu halten. |
Beispiel, das eine Warenkorb-Aktion erstellt:
{{ var $action = $wsActions.create("BasketItemAdd", { productId: "12345", quantity: 1 }) }}
ID: {{= $action.id }}
CSRF: {{= $action.csrf }}
$wsActions.url()
Erstellt eine URL, mit der eine bestimmte Aktion ausgeführt werden kann. Wird für Links verwendet.
Signatur$wsActions.url(action, target, params)
Rückgabestring - URL, mit der die Aktion ausgeführt werden kann.
Parameter
Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| string | ja | Name der Aktion, die ausgeführt werden soll. |
| string | ja | Zielseite nach erfolgreich durchgeführter Aktion. |
| map | ja | Eine Map mit Default-Parametern, die beim Ausführen der Aktion noch geändert werden können (Bsp. default-Menge, bei Produkt in Warenkorb legen) |
Beispiel, das einen Link zum Hinzufügen in den Warenkorb erstellt:
<a href="{{= $wsActions.url('BasketItemAdd', $wsViews.current.url(), { productId: '12345', quantity: 1 }) }}">
In den Warenkorb
</a>
Weiterführende Links