Documentation Index
Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
Use this file to discover all available pages before exploring further.
In diesem Abschnitt werden die verfügbaren Aktionen im Bereich Kundenkonto beschrieben. Mit diesen Aktionen können z.B. Konten erstellt, Adressen verwaltet und Anmeldedaten geändert werden.
Aktionen im Überblick
| Aktion | Beschreibung |
|---|
AccountRegister | Erstellt ein neues Kundenkonto. |
AccountActivate | Aktiviert ein bestehendes Kundenkonto über eine E-Mail-Adresse. |
AccountActivateOptIn | Aktiviert ein bestehendes Kundenkonto per Opt-In-Token. |
AccountDelete | Löscht den Account des eingeloggten Benutzers. |
AccountDeleteOptIn | Bestätigt die Löschung eines Kundenkontos per Opt-In-Token. |
SubAccountCreate | Legt ein neues Mitarbeiterkonto an und sendet eine E-Mail mit dem Link zum Setzen des Passworts. |
AcceptInvitation | Nimmt eine Einladung zu einem Kundenkonto per Opt-In-Token an. |
UnlockLogin | Entsperrt einen gesperrten Login-Zugang. |
Login | Meldet einen Benutzer an. |
Logout | Meldet einen eingeloggten Benutzer ab. |
PasswordForgotten | Sendet eine Passwort-vergessen-E-Mail. |
ResetPassword | Setzt das Passwort eines Benutzerkontos neu. |
EmailUpdate | Ändert die hinterlegte E-Mail-Adresse eines Benutzerkontos. |
EMailUpdateOptIn | Bestätigt die Änderung der E-Mail-Adresse per Opt-In-Token. |
EmailVerify | Verifiziert eine E-Mail-Adresse per Double-Opt-In. |
AddressCreate | Erstellt eine neue Adresse für den eingeloggten Benutzer. |
AddressUpdate | Bearbeitet eine bestehende Adresse des eingeloggten Benutzers. |
AddressDelete | Löscht eine Adresse des eingeloggten Benutzers. |
SetMainAddress | Legt eine Adresse als Hauptadresse fest. |
SetDefaultBillAddress | Legt eine Adresse als Standard-Rechnungsadresse fest. |
SetDefaultDeliveryAddress | Legt eine Adresse als Standard-Lieferadresse fest. |
RemoveDefaultBillAddress | Entfernt die gesetzte Standard-Rechnungsadresse. |
RemoveDefaultDeliveryAddress | Entfernt die gesetzte Standard-Lieferadresse |
CreditCardDelete | Löscht eine gespeicherte Kreditkarte aus dem Kundenkonto. |
CheckPasswordStrength | Prüft die Stärke eines eingegebenen Passworts in Echtzeit per AJAX. |
SaveGuestDataToUser | Erstellt aus einem Gast-Checkout ein vollwertiges Kundenkonto. |
SubAccountDelete | Löscht ein bestehendes Mitarbeiterkonto. |
UpdateSubAccount | Aktualisiert die Einstellungen eines Mitarbeiterkontos. |
UpdatePrivileges | Erstellt oder aktualisiert eine Berechtigungsgruppe mit definierten Rechten. |
CreatePrivilegeGroup | Legt eine neue Berechtigungsgruppe an. |
DeletePrivilegeGroup | Löscht eine bestehende Berechtigungsgruppe. |
Aktionen
AccountRegister
Mit dieser Aktion wird ein neues Kundenkonto angelegt. Der Benutzer gibt dabei seine E-Mail-Adresse sowie ein Passwort an.
Anwendungsbeispiel
Nutzbar auf einer Registrierungsseite, auf der neue Kunden ein Konto erstellen können, um z.B. ihre Bestellhistorie einzusehen oder Adressen zu verwalten.
Parameter
| Name | Beschreibung |
|---|
email | Identifier des Benutzer-Accounts (standardmäßig die E-Mail-Adresse). |
password | Passwort des Benutzer-Accounts. |
passwordRepeat | Erneute Eingabe des Passworts - muss mit password übereinstimmen. |
Fehlercodes
| Code | Beschreibung |
|---|
missingId | Parameter id ist leer. |
missingPassword | Parameter password ist leer. |
passwordMismatch | Parameter password und passwordRepeat sind nicht identisch. |
emailCheckFailed | Parameter id enthält eine ungültige E-Mail-Adresse. |
passwordCheckFailed | Passwort erfüllt nicht die erforderlichen Richtlinien. |
accountAlreadyExists | Es existiert bereits ein Account mit der angegebenen id. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt und in ein Formular eingebunden wird.
{{ var $cActionAccountRegister = $wsActions.create("AccountRegister") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAccountRegister.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAccountRegister.csrf }}">
<input type="email" name="email">
<input type="password" name="password">
<input type="password" name="passwordRepeat">
<button type="submit">Registrieren</button>
</form>
AccountActivate
Mit dieser Aktion wird ein bestehendes Kundenkonto aktiviert. Die Aktion wird typischerweise über ein Formular ausgelöst.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf der der Kunde seine E-Mail-Adresse eingibt, um sein Konto zu aktivieren.
Parameter
| Name | Beschreibung |
|---|
id | Identifier des Benutzer-Accounts (standardmäßig die E-Mail-Adresse). |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
missingId | Parameter id ist leer. |
emailCheckFailed | Parameter identhält eine ungültige E-Mail-Adresse. |
accountAlreadyExists | Es existiert bereits ein aktiver Account mit der angegebenen id. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt und in ein Formular eingebunden wird, über das der Kunde seinen Account mit seiner E-Mail-Adresse aktiviert.
{{ var $cActionAccountActivate = $wsActions.create("AccountActivate") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAccountActivate.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAccountActivate.csrf }}">
<input type="email" name="id">
<button type="submit">Account aktivieren</button>
</form>
AccountActivateOptIn
Mit dieser Aktion wird ein bestehendes Kundenkonto per Opt-In-Token aktiviert. Der Token wird dabei über einen Link in einer Bestätigungs-E-Mail an den Benutzer übermittelt.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf die der Kunde nach Klick auf den Opt-In-Link in der Registrierungs-E-Mail weitergeleitet wird.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
unauthorized | Es wurde kein gültiger Opt-In-Token übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreicher Ausführung der Aktion eine Bestätigungsmeldung angezeigt wird.
{{ if $wsActions.current.name == "AccountActivateOptIn" and $wsActions.current.success }}
<div class="alert alert-info">Account wurde aktiviert.</div>
{{ /if }}
AccountDelete
Mit dieser Aktion wird der Account des aktuell eingeloggten Benutzers unwiderruflich gelöscht.
Anwendungsbeispiel
Nutzbar auf einer Account-Verwaltungsseite, auf der eingeloggte Kunden ihr Konto auf Wunsch selbst löschen können.
Fehlercodes
| Code | Beschreibung |
|---|
| notLoggedIn | Der Benutzer ist nicht eingeloggt. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt wird und über einen Bestätigungs-Button ausgelöst wird.
{{ var $cActionAccountDelete = $wsActions.create("AccountDelete") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAccountDelete.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAccountDelete.csrf }}">
<button type="submit">Account Löschen</button>
</form>
AccountDeleteOptIn
Mit dieser Aktion wird die Löschung eines Kundenkontos per Opt-In-Token bestätigt. Der Token wird über einen Link in einer Bestätigungs-E-Mail an den Benutzer übermittelt.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf die der Kunde nach Klick auf den Opt-In-Link in der Löschungs-E-Mail weitergeleitet wird.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
unauthorized | Es wurde kein gültiger Opt-In-Token übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreicher Ausführung der Aktion eine Bestätigungsmeldung angezeigt wird.
{{ if $wsActions.current.name == "AccountDeleteOptIn" and $wsActions.current.success }}
<div class="alert alert-info">Account wurde gelöscht.</div>
{{ /if }}
SubAccountCreate
Mit dieser Aktion wird ein neues Mitarbeiterkonto angelegt. An die angegebene E-Mail-Adresse wird automatisch eine E-Mail mit einem Link zum Setzen des Passworts gesendet. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Account-Verwaltungsseite, auf der Administratoren neue Mitarbeiterkonten anlegen können.
Parameter
| Name | Beschreibung |
|---|
email | E-Mail-Adresse des neuen Mitarbeiterkontos. An diese Adresse wird der Link zum Setzen des Passworts gesendet. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
unauthorized | Der Benutzer verfüt nicht über Admin-Rechte. |
missingId | Parameter email ist leer. |
emailCheckFailed | Parameter emailenthält eine ungültige E-Mail-Adresse. |
accountAlreadyExists | Es existiert bereits ein Account mit der angegebenen E-Mail-Adresse. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt und in ein Formular eingebunden wird, über das ein neues Mitarbeiterkonto angelegt werden kann.
{{ var $myActionSubAccountCreate = $wsActions.create("SubAccountCreate") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionSubAccountCreate.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionSubAccountCreate.csrf }}">
<input type="email" name="email">
<button type="submit">Mitarbeiterkonto anlegen</button>
</form>
SubAccountDelete
Mit dieser Aktion wird ein bestehendes Mitarbeiterkonto gelöscht. Das eigene Konto sowie Konten mit Admin-Rechten können nicht gelöscht werden. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Mitarbeiterverwaltungsseite, auf der Administratoren nicht mehr benötigte Mitarbeiterkonten entfernen können.
Parameter
| Name | Beschreibung |
|---|
memberId | Die ID des Mitarbeiterkontos, das gelöscht werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
unauthorized | Der Benutzer verfügt nicht über Admin-Rechte. |
missingMemberId | Parameter memberId fehlt. |
invalidMemberId | Ungültige memberId - das Mitarbeiterkonto existiert nicht oder gehört nicht zu diesem Account. |
deletionNotAllowed | Das Konto darf nicht gelöscht werden, weil es sich um das eigene Konto oder ein Admin-Konto handelt. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie ein Mitarbeiterkonto über seine ID gelöscht wird.
{{ var $myActionSubAccountDelete = $wsActions.create("SubAccountDelete") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionSubAccountDelete.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionSubAccountDelete.csrf }}">
<input type="hidden" name="memberId" value="{{= $myMember.id }}">
<button type="submit">Mitarbeiterkonto löschen.</button>
</form>
UpdateSubAccount
Mit dieser Aktion werden die Einstellungen des bestehenden Mitarbeiterkontos aktualisiert. Eine Deaktivierung des eigenen Kontos oder das Entziehen der Admin-Rechte ist nicht möglich. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Mitarbeiterverwaltungsseite, auf der Administratoren Rollen und weitere Einstellungen von Mitarbeiterkonten anpassen können.
Parameter
| Name | Beschreibung |
|---|
memberId | Die ID des Mitarbeiterkontos, das aktualisiert werden soll. |
displayName | Anzeigename des Mitarbeiterkontos. |
active | Gibt an, ob sich das Mitarbeiterkonto anmelden darf (true / false). Das eigene Konto kann nicht deaktiviert werden. |
admin | Gibt an, ob das Konto Admin-Rechte besitzt (true / false). Dem eigenen Konto können keine Admin-Rechte entzogen werden. |
privilegeGroupId | ID der Berechtigungsgruppe, die dem Mitarbeiterkonto zugewiesen wird. |
defaultAddressVisibility | Legt fest, welche Sichtbarkeit beim Anlegen neuer Adressen standardmäßig vorausgewählt ist. Mögliche Werte: - private (nur für dieses Konto sichtbar) - shared (firmenweit freigegeben) |
allowedSubshops | Legt fest, auf welche Subshops das Mitarbeiterkonto Zugriff hat. Die Subshop-IDs werden als Schlüssel eines JSON-Objekts übergeben, z.B. {"shop1": true, "shop2": true}. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
| notLoggedIn | Der Benutzer ist nicht eingeloggt. |
| unauthorized | Der Benutzer verfügt nicht über Admin-Rechte. |
| missingMemberId | Parameter memberId fehlt. |
| invalidMemberId | Ungültige memberId - das Mitarbeiterkonto existiert nicht oder gehört nicht zu diesem Account. |
| selfDeactivationNotAllowed | Das eigene Konto kann nicht deaktiviert werden. |
| selfAdminRemovalNotallowed | Dem eigenen Konto können keine Admin-Rechte entzogen werden. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Einstellungen eines Mitarbeiterkontos über ein Formular aktualisiert werden.
{{ var $myActionUpdateSubAccount = $wsActions.create("UpdateSubAccount") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionUpdateSubAccount.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionUpdateSubAccount.csrf }}">
<input type="hidden" name="memberId" value="{{= $myMember.id }}">
<input type="text" name="displayName" value="{{= $myMember.displayName }}">
<input type="hidden" name="privilegeGroupId" value="{{= $myMember.privilegeGroupId }}">
<input type="hidden" name="defaultAddressVisibility" value="private">
<input type="hidden" name="allowedSubshops" value='{"shop1": true, "shop2": true}'>
<label>
<input type="checkbox" name="active" value="true" {{ if $myMember.active }}checked{{ /if }}>
Aktiv
</label>
<label>
<input type="checkbox" name="admin" value="true" {{ if $myMember.admin }}checked{{ /if }}>
Admin
</label>
<button type="submit">Mitarbeiterkonto speichern.</button>
</form>
UpdatePrivileges
Mit dieser Aktion wird eine Berechtigungsgruppe aktualisiert. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Berechtigungsverwaltungsseite, auf der Administratoren Rechte und Einschränkungen für Berechtigungsgruppen definieren können.
Parameter
| Name | Beschreibung |
|---|
privilegeId | Die ID der Berechtigungsgruppe, die aktualisiert werden soll. |
createMissing | Gibt an, ob die Gruppe automatisch erstellt werden soll, falls sie nicht existiert. Mögliche Werte: - yes |
type | Art der Berechtigungsgruppe: - global (shopweit) - account (kontobezogen) |
privileges | JSON-Objekt mit den Berechtigungsfeldern. Mögliche Felder: - allowedPaymentMethods (Liste erlaubter Zahlungsarten) - paymentLimitPerOrder (maximaler Bestellwert pro Bestellung) - blockedTemplates (gesperrte Templates / Seiten der Gruppe) - blockedUrls (gesperrte URLs der Gruppe) - editableFields (bearbeitbare Felder der Gruppe) - groupName (nur relevant bei type = global) |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
unauthorized | Der Benutzer verfügt nicht über Admin-Rechte. |
missingPrivilegeId | Parameter privilegeId fehlt. |
invalidPrivilegeId | Ungültige privilegeId - die Gruppe existiert nicht und createMissing ist nicht gesetzt. |
invalidType | Parameter type enthält einen ungültigen Wert. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Berechtigungen einer Gruppe aktualisiert werden.
{{ var $myActionUpdatePrivileges = $wsActions.create("UpdatePrivileges") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionUpdatePrivileges.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionUpdatePrivileges.csrf }}">
<input type="hidden" name="privilegeId" value="{{= $myPrivilegeGroup.id }}">
<input type="hidden" name="createMissing" value="yes">
<input type="hidden" name="type" value="global">
<input type="hidden" name="privileges" value='{"groupName": "Einkauf", "allowedPaymentMethods": ["invoice", "prepayment"], "paymentLimitPerOrder": 500}'>
<button type="submit">Berechtigungen speichern.</button>
</form>
CreatePrivilegeGroup
Mit dieser Aktion wird eine neue Berechtigungsgruppe erstellt. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Berechtigungsverwaltungsseite, auf der Administratoren neue Gruppen mit definierten Rechten für Mitarbeiterkonten erstellen können.
Parameter
| Name | Beschreibung |
|---|
name | Name der neuen Berechtigungsgruppe. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
unauthorized | Der Benutzer verfügt nicht über Admin-Rechte. |
missingName | Parameter name fehlt oder ist leer. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine neue Berechtigungsgruppe über ein Formular angelegt wird.
{{ var $myActionCreatePrivilegeGroup = $wsActions.create("CreatePrivilegeGroup") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionCreatePrivilegeGroup.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionCreatePrivilegeGroup.csrf }}">
<input type="text" name="name">
<button type="submit">Berechtigungsgruppe anlegen.</button>
</form>
DeletePrivilegeGroup
Mit dieser Aktion wird eine bestehende Berechtigungsgruppe gelöscht. Eine Gruppe kann jedoch nicht gelöscht werden, solange ihr noch Mitarbeiterkonten zugewiesen sind. Für diese Aktion sind Admin-Rechte erforderlich.
Anwendungsbeispiel
Nutzbar auf der Berechtigungsverwaltungsseite, wenn eine nicht mehr benötigte Berechtigungsgruppe entfernt werden soll.
Parameter
| Name | Beschreibung |
|---|
id | Die ID der Berechtigungsgruppe, die gelöscht werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
unauthorized | Der Benutzer verfügt nicht über Admin-Rechte. |
missingId | Parameter id fehlt. |
invalidId | Ungültige id - die Berechtigungsgruppe existiert nicht. |
groupHasMembers | Die Berechtigungsgruppe kann nicht gelöscht werden, da ihr noch Mitarbeiterkonten zugewiesen sind. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine Berechtigungsgruppe über ihre ID gelöscht wird.
{{ var $myActionDeletePrivilegeGroup = $wsActions.create("DeletePrivilegeGroup") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionDeletePrivilegeGroup.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionDeletePrivilegeGroup.csrf }}">
<input type="hidden" name="id" value="{{= $myPrivilegeGroup.id }}">
<button type="submit">Berechtigungsgruppe löschen.</button>
</form>
AcceptInvitation
Mit dieser Aktion wird eine Einladung zu einem Kundenkonto angenommen. Der Einladungslink wird per E-Mail an den eingeladenen Benutzer übermittelt.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf die der eingeladene Kunde nach Klick auf den Einladungslink in der E-Mail weitergeleitet wird.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
unauthorized | Es wurde kein gültiger Opt-In-Token übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreicher Annahme der Einladung eine Bestätigungsmeldung angezeigt wird.
{{ if $wsActions.current.name == "AcceptInvitation" and $wsActions.current.success }}
<div class="alert alert-info">Einladung wurde angenommen.</div>
{{ /if }}
UnlockLogin
Mit dieser Aktion wird ein Login-Zugang entsperrt, der aufgrund zu vieler fehlgeschlagener Anmeldeversuche gesperrt wurde. Die Aktion kann sowohl von einem eingeloggten Benutzer als auch über einen Opt-In-Token ausgeführt werden.
Anwendungsbeispiel
Nutzbar, wenn ein Kunde nach mehreren Fehleingaben aus seinem Konto ausgesperrt wurde und einen Entsperrlink per E-Mail erhalten hat.
Fehlercodes
| Code | Beschreibung |
|---|
unauthorized | Der Benutzer ist nicht eingeloggt oder es wurde kein gültiger Opt-In-Token übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreicher Ausführung der Aktion eine Bestätigungsmeldung angezeigt wird. Die Aktion selbst wird typischerweise über einen Opt-In-Link in einer E-Mail ausgelöst und benötigt kein Formular.
{{ if $wsActions.current.name == "UnlockLogin" and $wsActions.current.success }}
<div class="alert alert-info">Account wurde entsperrt</div>
{{ /if }}
Login
Mit dieser Aktion wird ein Benutzer mit seinen Zugangsdaten angemeldet.
Anwendungsbeispiel
Nutzbar auf der Login-Seite, auf der Kunden sich mit E-Mail-Adresse und Passwort in ihr Konto einloggen können.
Parameter
| Name | Beschreibung |
|---|
id | Identifier des Benutzer-Accounts (standardmäßig die E-Mail-Adresse). |
password | Passwort des Benutzer-Accounts. |
Fehlercodes
| Code | Beschreibung |
|---|
missingId | Parameter id ist leer. |
missingPassword | Parameter password ist leer. |
emailCheckFailed | Parameter id enthält eine ungültige E-Mail-Adresse. |
loginBlocked | Zu viele ungültige Loginversuche. |
invalidCredentials | Ungültiger Loginversuch - id oder password sind nicht korrekt. |
Zugehörige Module, Variablen & Methoden
Beispiel das ein Login-Formular mit E-Mail und Passwort sowie einer allgemeinen Fehlerausgabe bei ungültigen Angaben erstellt.
{{ var $cActionLogin = $wsActions.create("Login") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionLogin.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionLogin.csrf }}">
{{ if $cActionLogin.error }}
<div class="alert alert-danger">Fehler aufgetreten</div>
{{ /if }}
<input type="email" name="id" value="{{= $cActionLogin.params.id|ifNull('') }}">
<input type="password" name="password">
<button type="submit">Einloggen</button>
</form>
Logout
Mit dieser Aktion wird ein eingeloggter Benutzer abgemeldet.
Anwendungsbeispiel
Nutzbar als Logout-Button im Header oder auf der Account-Übersichtsseite.
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion über einen einfachen Link ausgelöst wird, der den Benutzer nach dem Logout auf eine definierte Seite weiterleitet.
<a href="{{= $wsActions.url('Logout'
, $wsViews.viewUrl('account/overview.htm'), {}) }}">Ausloggen</a>
PasswordForgotten
Mit dieser Aktion wird eine Passwort-vergessen-E-Mail an die angegebene E-Mail-Adresse gesendet. Die E-Mail enthält einen Opt-In-Link, der die Ausführung der Aktion ResetPassword erlaubt.
Anwendungsbeispiel
Nutzbar auf einer “Passwort vergessen”-Seite, auf der Kunden ihre E-Mail-Adresse eingeben, um einen Wiederherstellungslink zu erhalten.
Parameter
| Name | Beschreibung |
|---|
email | E-Mail-Adresse des Benutzerkontos, an die der Opt-In-Link gesendet wird. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
missingEmail | Parameter email ist leer. |
emailCheckFailed | Parameter email enthält keine gültige E-Mail-Adresse. |
passwordRecoveryFailed | Es existiert kein Benutzerkonto zu der angegebenen E-Mail-Adresse. |
Zugehörige Module, Variablen & Methoden
Beispiel, das ein Formular erstellt, über das der Kunde seine E-Mail-Adresse eingibt und nach erfolgreicher Ausführung eine Bestätigung erhält.
{{ var $cActionPasswordForgotten = $wsActions.create("PasswordForgotten") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionPasswordForgotten.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionPasswordForgotten.csrf }}">
{{ if $cActionPasswordForgotten.success }}
<div>Passwort erfolgreich zurückgesetzt</div>
{{ /if }}
<input type="email" name="email">
<button type="submit">Neues Passwort anfordern</button>
</form>
ResetPassword
Mit dieser Aktion wird das Passwort eines Benutzerkontos neu gesetzt. Nach erfolgreicher Ausführung wird der Benutzer automatisch ausgeloggt. Standardmäßig gilt die Aktion für den eingeloggten Benutzer - wird ein Opt-In-Token mitgesendet, gilt sie für den mit dem Token verknüpften Benutzer.
Anwendungsbeispiel
Nutzbar auf der Seite, auf die der Kunde über den Passwort-vergessen-Link weitergeleitet wird, um dort ein neues Passwort zu vergeben.
Parameter
| Name | Beschreibung |
|---|
newPassword | Das neue Passwort, das für das Benutzerkonto gesetzt werden soll. |
newPasswordRepeat | Wiederholung des neuen Passworts zur Vermeidung von Tippfehlern. |
passwordAuth | Bisheriges Passwort des Benutzerkontos. Nicht erforderlich, wenn ein Opt-In-Token verwendet wird. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Weder ein Opt-In-Token noch eine eingeloggte Session ist vorhanden. |
missingPassword | Parameter newPassword ist leer. |
passwordMismatch | Parameter newPasswordund newPasswordRepeatsind nicht identisch. |
missingPasswordAuth | Parameter passwordAuth ist leer. Tritt nur ohne Opt-In-Token auf. |
failedPasswordAuth | Parameter passwordAuth stimmt nicht mit dem bisherigen Passwort überein. |
passwordCheckFailed | newPassword entspricht nicht den Passwortregeln. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreichem Reset eine Bestätigung ausgegeben wird, bei einem gültigen Opt-In-Token das Formular zur Passwortvergabe erscheint und bei einem ungültigen Token ein Hinweis auf den abgelaufenen Link angezeigt wird.
{{ if $wsOptIn.current.valid }}
{{ var $cActionResetPassword = $wsActions.create("ResetPassword") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionResetPassword.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionResetPassword.csrf }}">
<input type="password" name="newPassword">
<input type="password" name="newPasswordRepeat">
<button type="submit">Passwort zurücksetzen.</button>
</form>
{{ else }}
<div>Der Link ist abgelaufen.</div>
{{ /if }}
EmailUpdate
Mit dieser Aktion wird die hinterlegte E-Mail-Adresse eines Benutzerkontos geändert.
Anwendungsbeispiel
Nutzbar auf der Account-Verwaltungsseite, auf der eingeloggte Kunden ihre E-Mail-Adresse aktualisieren können.
Parameter
| Name | Beschreibung |
|---|
email | Neue E-Mail-Adresse, die für das Benutzerkonto hinterlegt werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
missingEmail | Parameter email fehlt. |
emailCheckFailed | Parameter email enthält keine gültige E-Mail-Adresse. |
accountAlreadyExists | Es existiert bereits ein anderer Account mit dieser E-Mail-Adresse. |
Zugehörige Module, Variablen & Methoden
Beispiel das ein Formular zur Eingabe einer neuen E-Mail-Adresse bereitstellt und nach erfolgreicher Ausführung eine Bestätigung ausgibt.
{{ var $cActionEmailUpdate = $wsActions.create("EmailUpdate") }}
{{ if $cActionEmailUpdate.success }}
<div>E-Mail-Adresse erfolgreich aktualisiert.</div>
{{ else }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionEmailUpdate.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionEmailUpdate.csrf }}">
<input type="email" name="email">
<button type="submit">E-Mail-Adresse ändern.</button>
</form>
{{ /if }}
EmailUpdateOptIn
Mit dieser Aktion wird die Änderung der E-Mail-Adresse per Opt-In-Token bestätigt. Der Token wird über einen Link in einer Bestätigungs-E-Mail an die neue E-Mail-Adresse übermittelt.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf die der Kunde nach Klick auf den Opt-In-Link in der Bestätigungs-E-Mail weitergeleitet wird.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
unauthorized | Es wurde kein gültiger Opt-In-Token übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie bei einem gültigen Opt-In-Token ein Bestätigungsformular angezeigt wird, nach erfolgreicher Ausführung eine Erfolgsmeldung erscheint und bei einem abgelaufenen Token ein entsprechender Hinweis ausgegeben wird.
{{ var $cActionEmailUpdateOptIn = $wsActions.create("EmailUpdateOptIn") }}
{{ if $wsActions.current.success and $wsActions.current.name == "EmailUpdateOptIn" }}
<div class="alert alert-success">E-Mail-Adresse wurde erfolgreich geändert.</div>
{{ elseif $wsOptIn.current.valid }}
<form method="post" action="{{= $wsViews.current.url() }}">
<input type="hidden" name="wscsrf" value="{{= $cActionEmailUpdateOptIn.csrf }}">
<input type="hidden" name="wsact" value="{{= $cActionEmailUpdateOptIn.id }}">
<button type="submit">E-Mail-Adresse bestätigen.</button>
</form>
{{ else }}
<div class="alert alert-danger">Der Token ist abgelaufen.</div>
{{ /if }}
EmailVerify
Mit dieser Aktion wird eine E-Mail-Adresse per Double-Opt-In verifiziert. Nach der Registrierung erhält der Kunde eine Bestätigungs-E-Mail; durch Klick auf den enthaltenen Link wird diese Aktion auf der Shop-Seite ausgeführt.
Anwendungsbeispiel
Nutzbar auf der Bestätigungsseite, auf die der Kunde nach Klick auf den Verifizierungslink in der Registrierungs-E-Mail weitergeleitet wird.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
actionNotAllowed | Kein gültiger Double-Opt-In-Token vorhanden. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nach erfolgreichem Klick auf den Bestätigungslink eine Erfolgsmeldung ausgegeben wird und bei einem ungültigen Token ein entsprechender Hinweis erscheint.
{{ if $wsActions.current.name == "EmailVerify" }}
{{ if $wsActions.current.success }}
<div>E-Mail-Adresse wurde verifiziert.</div>
{{ else }}
<div>E-Mail-Adresse konnte nicht verifiziert werden.</div>
{{ /if }}
{{ /if }}
AddressCreate
Mit dieser Aktion wird eine neue Adresse für den eingeloggten Benutzer erstellt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, auf der Kunden neue Liefer- oder Rechnungsadressen anlegen können.
Parameter
| Name | Beschreibung |
|---|
address.(fieldname) | Die einzelnen Felder der Adresse, z.B. address.firstName, address.streetetc. |
type | Art der Adresse: - “bill” - Rechnungsadresse - “delivery” - Lieferadresse Handelt es sich für das betreffende Kundenkonto um die erste Adresse seiner Art, wird sie automatisch als Hauptadresse für den jeweiligen Typ gesetzt. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt und kein Opt-In-Token vorhanden. |
emptyAddress | Es wurden keine Adressfelder übergeben. |
addressCheckFailed | Fehler in den Adressdaten. Wird über Sub-Codes konkretisiert: - minlen = zu wenig Zeichen - maxlen = zu viele Zeichen - numeric = ungültige Zeichen - country = Land nicht konfiguriert - zip = Postleitzahl fehlerhaft |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine neue Adresse über ein Formular mit einzelnen Adressfeldern angelegt wird.
{{ var $myActionAddressCreate = $wsActions.create("AddressCreate") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionAddressCreate.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionAddressCreate.csrf }}">
<input type="hidden" name="type" value="delivery">
<input type="text" name="address.firstName">
<input type="text" name="address.lastName">
<input type="text" name="address.street">
<input type="text" name="address.zip">
<input type="text" name="address.city">
<button type="submit">Lieferadresse speichern.</button>
</form>
AddressUpdate
Mit dieser Aktion wird eine bestehende Adresse des eingeloggten Benutzers bearbeitet.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, wenn ein Kunde eine seiner gespeicherten Adressen aktualisieren möchte.
Parameter
| Name | Beschreibung |
|---|
addressId | Die ID der Adresse, die bearbeitet werden soll. |
address.(fieldname) | Die einzelnen Felder der Adresse, die aktualisiert werden sollen. |
type | Art der Adresse: - “bill” - Rechnungsadresse - “delivery” - Lieferadresse |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt und es ist kein Opt-In-Token vorhanden. |
emptyAddress | Es wurden keine Adressfelder übergeben. |
invalidAddressId | Ungültige addressId - die Adresse existiert nicht oder gehört nicht zu diesem Benutzerkonto. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine bestehende Adresse anhand ihrer ID bearbeitet wird.
{{ var $myActionAddressUpdate = $wsActions.create("AddressUpdate") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionAddressUpdate.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionAddressUpdate.csrf }}">
<input type="hidden" name="addressId" value="{{= $myAddress.id }}">
<input type="hidden" name="type" value="delivery">
<input type="text" name="address.firstName" value="{{= $myAddress.firstName }}">
<input type="text" name="address.lastName" value="{{= $myAddress.lastName }}">
<input type="text" name="address.street" value="{{= $myAddress.street }}">
<input type="text" name="address.zip" value="{{= $myAddress.zip }}">
<input type="text" name="address.city" value="{{= $myAddress.city }}">
<button type="submit">Lieferadresse aktualisieren.</button>
</form>
AddressDelete
Mit dieser Aktion wird eine Adresse des eingeloggten Benutzers gelöscht.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, wenn ein Kunde eine nicht mehr benötigte Adresse entfernen möchte.
Parameter
| Name | Beschreibung |
|---|
addressId | Die ID der Adresse, die gelöscht werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt und es ist kein Opt-In-Token vorhanden. |
invalidAddressId | Ungültige addressId - die Adresse existiert nicht oder gehört nicht zu diesem Benutzerkonto. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine Adresse über ihre ID gelöscht wird.
{{ var $cActionAddressDelete = $wsActions.create("AddressDelete") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAddressDelete.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAddressDelete.csrf }}">
<input type="hidden" name="addressId" value="{{= $cAddress.id }}">
<button type="submit">Adresse löschen.</button>
</form>
SetMainAddress
Mit dieser Aktion wird eine gespeicherte Adresse als Hauptadresse festgelegt. Die Hauptadresse wird im Checkout automatisch vorausgewählt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, damit Kunden ihre bevorzugte Adresse als Standard für zukünftige Bestellungen hinterlegen können.
Parameter
| Name | Beschreibung |
|---|
addressId | Die ID der Adresse, die als Hauptadresse gesetzt werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
missingAddressId | Parameter addressId fehlt. |
invalidAddressId | Ungültige addressId - die Adresse existiert nicht oder gehört zu einem anderen Konto. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine Adresse per Button als Hauptadresse gesetzt wird, sofern sie es nicht bereits ist.
{{ var $cActionSetMainAddress = $wsActions.create("SetMainAddress") }}
{{ foreach $cAddress in $wsAccount.addresses }}
{{ if $cAddress.id != $wsAccount.mainAddress.id }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionSetMainAddress.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionSetMainAddress.csrf }}">
<input type="hidden" name="addressId" value="{{= $cAddress.id }}">
<button type="submit">Als Hauptadress festlegen.</button>
</form>
{{ /if }}
{{ /foreach }}
SetDefaultBillAddress
Mit dieser Aktion wird eine gespeicherte Adresse als Standard-Rechnungsadresse festgelegt. Die Standard-Rechnungsadresse wird im Checkout automatisch als Rechnungsadresse vorausgewählt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, damit Kunden eine bevorzugte Rechnungsadresse als Standard für zukünftige Bestellungen hinterlegen können.
Parameter
| Name | Beschreibung |
|---|
addressId | Die ID der Adresse, die als Standard-Rechnungsadresse gesetzt werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
missingAddressId | Parameter addressId fehlt. |
invalidAddressId | Ungültige addressId - die Adresse existiert nicht oder gehört zu einem anderen Konto. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie eine Adresse per Button als Standard-Rechnungsadresse gesetzt wird, sofern sie es nicht bereits ist.
{{ var $myActionSetDefaultBillAddress = $wsActions.create("SetDefaultBillAddress") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionSetDefaultBillAddress.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionSetDefaultBillAddress.csrf }}">
<input type="hidden" name="addressId" value="{{= $myAddress.id }}">
<button type="submit">Als Standard-Rechnungsadresse festlegen.</button>
</form>
SetDefaultDeliveryAddress
Mit dieser Aktion wird eine gespeicherte Adresse als Standard-Lieferadresse festgelegt. Die Standard-Lieferadresse wird im Checkout automatisch als Lieferadresse vorausgewählt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, damit Kunden eine bevorzugte Lieferadresse als Standard für zukünftige Bestellungen hinterlegen können.
Parameter
| Name | Beschreibung |
|---|
addressId | Die ID der Adresse, die als Standard-Lieferadresse gesetzt werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
missingAddressId | Parameter addressId fehlt. |
invalidAddressId | Ungültige addressId - die Adresse existiert nicht oder gehört zu einem anderen Konto. |
Zugehörige Module, Variablen & Methoden
{{ var $myActionSetDefaultDeliveryAddress = $wsActions.create("SetDefaultDeliveryAddress") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionSetDefaultDeliveryAddress.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionSetDefaultDeliveryAddress.csrf }}">
<input type="hidden" name="addressId" value="{{= $myAddress.id }}">
<button type="submit">Als Standard-Lieferadresse festlegen.</button>
</form>
RemoveDefaultBillAddress
Mit dieser Aktion wird die gesetzte Standard-Rechnungsadresse des eingeloggten Benutzers entfernt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, wenn ein Kunde die Standard-Rechnungsadresse zurücksetzen möchte, sodass im Checkout keine Adresse mehr vorausgewählt ist.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Standard-Rechnungsadresse über einen Button entfernt wird, sofern eine gesetzt ist.
{{ var $myActionRemoveDefaultBillAddress = $wsActions.create("RemoveDefaultBillAddress") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionRemoveDefaultBillAddress.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionRemoveDefaultBillAddress.csrf }}">
<button type="submit">Standard-Rechnungsadresse entfernen.</button>
</form>
RemoveDefaultDeliveryAddress
Mit dieser Aktion wird die gesetzte Standard-Lieferadresse des eingeloggten Benutzers entfernt.
Anwendungsbeispiel
Nutzbar auf der Adressverwaltungsseite, wenn ein Kunde die Standard-Lieferadresse zurücksetzen möchte, sodass im Checkout keine Adresse mehr vorausgewählt ist.
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Standard-Lieferadresse über einen Button entfernt wird, sofern eine gesetzt ist.
{{ var $myActionRemoveDefaultDeliveryAddress = $wsActions.create("RemoveDefaultDeliveryAddress") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $myActionRemoveDefaultDeliveryAddress.id }}">
<input type="hidden" name="wscsrf" value="{{= $myActionRemoveDefaultDeliveryAddress.csrf }}">
<button type="submit">Standard-Lieferadresse entfernen.</button>
</form>
CreditCardDelete
Mit dieser Aktion wird eine gespeicherte Kreditkarte aus dem Kundenkonto gelöscht.
Anwendungsbeispiel
Nutzbar auf der Kreditkartenverwaltungsseite, auf der eingeloggte Kunden ihre gespeicherten Kreditkarten einsehen und entfernen können.
Parameter
| Name | Beschreibung |
|---|
pseudoCCId | Die ID der Kreditkarte, die gelöscht werden soll. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
invalidPseudoCCId | Ungültige pseudoCCId - die Kreditkarte existiert nicht oder gehört nicht zu diesem Benutzerkonto. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie alle gespeicherten Kreditkarten aufgelistet werden und jede einzelne über einen Button gelöscht werden kann.
{{ var $cCreditCards = $wsAccount.pseudoCreditCards }}
{{ foreach $cCreditCard in $wsAccount.pseudoCreditCards }}
{{ var $cActionCreditCardDelete = $wsActions.create("CreditCardDelete") }}
<form method="POST" action="{{= $wsViews.current.url() }}">
<input type="hidden" name="wscsrf" value="{{= $cActionCreditCardDelete.csrf }}">
<input type="hidden" name="wsact" value="{{= $cActionCreditCardDelete.id }}">
<input type="hidden" name="pseudoCCId" value="{{= $cCreditCard.id }}">
<button type="submit">Kreditkarte löschen.</button>
</form>
{{ /foreach }}
CheckPasswordStrength
Mit dieser Aktion wird die Stärke eines eingegebenen Passworts in Echtzeit geprüft. Die Aktion wird per AJAX im Hintergrund ausgeführt und gibt ein JSON-Objekt mit dem Bewertungsergebnis zurück.
Anwendungsbeispiel
Nutzbar auf Seiten mit Passwort-Eingabefeldern, z.B. auf der Registrierungsseite, um dem Kunden direktes Feedback zur Passwortstärke zu geben.
Parameter
| Name | Beschreibung |
|---|
password | Das zu prüfende Passwort. |
Rückgabewerte
| Wert | Beschreibung |
|---|
value | Erreichte Punktzahl der Passwortstärke. |
max | Maximale Punktzahl der Passwortstärke. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Passwortstärke bei Eingabe in Echtzeit geprüft und dem Benutzer visuell als schwach, mittel oder stark angezeigt wird.
{{ var $cActionCheckPasswordStrength = $wsActions.create("CheckPasswordStrength") }}
<form id="wsFormCheckPasswordStrength" action="{{= $wsViews.current.url() }}" method="post" style="display:none;" data-ws-ajax-form>
<input type="hidden" name="wsact" value="{{= $cActionCheckPasswordStrength.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionCheckPasswordStrength.csrf }}">
<input type="hidden" name="password" id="wsCheckPassword" value="">
</form>
accountDisplayNameUpdate
Mit dieser Aktion wird der Anzeigename eines Kundenkontos geändert.
Anwendungsbeispiel
Nutzbar auf der Account-Verwaltungsseite, auf der eingeloggte Kunden ihren Anzeigenamen aktualisieren können.
Parameter
| Name | Beschreibung |
|---|
displayName | Der neue Anzeigename, der für das Benutzerkonto hinterlegt werden soll. |
Fehlercodes
| Code | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
missingDisplayName | Parameter displayName fehlt. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt und in ein Formular eingebunden wird, über das der Kunde seinen Anzeigenamen aktualisieren kann.
{{ var $cActionAccountDisplayNameUpdate = $wsActions.create("accountDisplayNameUpdate") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAccountDisplayNameUpdate.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAccountDisplayNameUpdate.csrf }}">
<input type="text" name="displayName">
<button type="submit">Anzeigename speichern</button>
</form>
AccountSetCustomerData
Mit dieser Aktion werden benutzerdefinierte Kundendaten für das eingeloggte Benutzerkonto gesetzt oder aktualisiert.
Anwendungsbeispiel
Nutzbar auf der Account-Verwaltungsseite, auf der eingeloggte Kunden ihre persönlichen Daten wie z.B. Geburtsdatum oder Telefonnummer hinterlegen können.
Parameter
| Name | Beschreibung |
|---|
customerData.(fieldname) | Die einzelnen Felder der Kundendaten. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
notLoggedIn | Der Benutzer ist nicht eingeloggt. |
emptyCustomerData | Es wurden keine Kundendatenfelder übergeben. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie die Aktion erstellt und in ein Formular eingebunden wird, über das der Kunde seine persönlichen Daten aktualisieren kann.
{{ var $cActionAccountSetCustomerData = $wsActions.create("AccountSetCustomerData") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionAccountSetCustomerData.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionAccountSetCustomerData.csrf }}">
<input type="text" name="customerData.phone">
<input type="text" name="customerData.birthDate">
<button type="submit">Kundendaten speichern</button>
</form>
GuestRegister
Mit dieser Aktion wird aus einem Gast-Checkout ein vollwertiges Kundenkonto erstellt. Der Gast gibt dabei ein Passwort an, die E-Mail-Adresse wird automatisch aus den Checkout-Daten übernommen.
Anwendungsbeispiel
Nutzbar auf der Bestellbestätigungsseite nach einem Gast-Checkout, auf der nicht eingeloggte Kunden die Möglichkeit erhalten, sich direkt ein Konto anzulegen.
Parameter
| Name | Beschreibung |
|---|
guestMail | E-Mail-Adresse des Gast-Kontos, wird automatisch aus den Checkout-Daten übernommen. |
password | Neues Passwort für das Kundenkonto. |
passwordRepeat | Wiederholung des Passworts. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
passwordCheckFailed | Passwort erfüllt nicht die erforderlichen Richtlinien. Wird über Sub-Codes konkretisiert: - minlen = zu wenig Zeichen - maxlen = zu viele Zeichen |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie nicht eingeloggten Kunden nach einem Gast-Checkout die Möglichkeit geboten wird, ein Kundenkonto anzulegen, inklusive Erfolgsausgabe.
{{ if not $wsAccount.isLoggedIn }}
{{ var $cGuestRegister = $wsActions.create("GuestRegister") }}
{{ if $cGuestRegister.success }}
<div class="alert alert-success">Es wurde ein Konto angelegt.</div>
{{ /if }}
{{ if not $cGuestRegister.success }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wscsrf" value="{{= $cGuestRegister.csrf }}">
<input type="hidden" name="wsact" value="{{= $cGuestRegister.id }}">
<input type="email" name="guestMail" value="{{= $wsCheckout.guestMail }}" readonly>
<input type="password" name="password">
<input type="password" name="passwordRepeat">
<button type="submit">Kundenkonto anlegen.</button>
</form>
{{ /if }}
{{ /if }}
SaveGuestDataToUser
Mit dieser Aktion wird aus den Daten eines Gast-Checkouts ein vollwertiges Kundenkonto erstellt. Der Gast gibt dabei ein Passwort an und erhält damit Zugang zu einem dauerhaften Konto.
Anwendungsbeispiel
Nutzbar auf der Bestellbestätigungsseite nach einem Gast-Checkout, um dem Kunden die Möglichkeit zu geben, sich direkt ein Konto anzulegen, ohne erneut alle Daten eingeben zu müssen.
Parameter
| Name | Beschreibung |
|---|
id | E-Mail-Adress des Gast-Kontos. |
password | Neues Passwort für das Kundenkonto. |
passwordRepeat | Wiederholung des Passworts. |
Fehlercodes
| Fehlercode | Beschreibung |
|---|
nonGuestAccount | Der Benutzer ist bereits in einem Kundenkonto eingeloggt. |
missingId | Parameter id fehlt. |
missingPassword | Parameter password fehlt. |
passwordMismatch | Parameter password und passwordRepeat sind nicht identisch. |
passwordCheckFailed | Passwortregel-Prüfung ist fehlgeschlagen. |
Zugehörige Module, Variablen & Methoden
Beispiel das zeigt, wie ein Gast-Kunde nach dem Checkout ein dauerhaftes Konto anlegen kann, indem er nur ein Passwort vergeben muss.
{{ var $cActionSaveGuestDataToUser = $wsActions.create("SaveGuestDataToUser") }}
<form action="{{= $wsViews.current.url() }}" method="post">
<input type="hidden" name="wsact" value="{{= $cActionSaveGuestDataToUser.id }}">
<input type="hidden" name="wscsrf" value="{{= $cActionSaveGuestDataToUser.csrf }}">
<input type="hidden" name="id" value="{{= $wsAccount.email }}">
<input type="password" name="password">
<input type="password" name="passwordRepeat">
<button type="submit">Kundenkonto erstellen.</button>
</form>