EOL-Tags steuern beide Seiten dieses Ablaufs: die Login-Seite mit Anforderungs- und Codeeingabe sowie die E-Mail mit Code oder Link. Hinzu kommen zwei Schaltflächen-Tags und ein Formular-Tag, die nur in diesem Zusammenhang verwendet werden und daher hier beschrieben sind.
Wegweiser: Login per E-Mail ohne Passwort · Referenz: Abschnitt EmailOTPLogin
Wo die Tags gelten
Der gesamte Ablauf im Shop läuft über ein einziges Template, nämlich das Login-Template aus dem AbschnittTemplates der Shopkonfiguration (ws_login.htm). Das Shopsystem zeigt dieses Template in drei Situationen an: als normale Login-Seite, nach dem Anfordern einer E-Mail und nach einem Fehler. Welche Ansicht anzeigt wird, entscheidet das Template anhand des Werts von EOL-PendingEmail selbst.
Die E-Mail wird aus einem eigenen Template erstellt, das im Abschnitt EmailOTPLoginMail eingetragen ist. Nur dort sind der EOL-Code und der EOL-MagicLink gefüllt. Alle übrigen EOL-Tags sind in beiden Templates aktiv.
Ist die Funktion eingeschaltet
EOL-Enabled berücksichtigt den Testbetrieb. Steht in der Konfiguration allow = test, greift die Klammerung nur im Testmodus des Shops. So lässt sich die Funktion im laufenden Shop aufbauen, ohne dass sie für Käufer sichtbar ist.
EOL-MethodIsCode und EOL-MethodIsLink lesen nur die Einstellung Method aus und fragen nicht, ob die Funktion aktiviert ist. Setzen Sie sie deshalb immer innerhalb von EOL-Enabled ein.
Alle drei Tags sind reine Klammerungen, positiv wie negativ.
Anforderung oder Codeeingabe: EOL-PendingEmail
Hat ein Käufer eine Mail angefordert, merkt sich der Shop die eingegebene Adresse in der Sitzung.EOL-PendingEmail gibt sie als Einzel-Tag aus und dient als Klammerung, solange sie vorliegt. Damit schaltet das Template zwischen den beiden Ansichten um.
Formularfelder und Schaltflächen
Die Anforderung benötigt kein eigenes Formular-Tag. Sie läuft über das normale AnmeldeformularFORM-LoginKnownUser. Erst die Codeeingabe hat mit FORM-EOL_Verify ein eigenes Ziel.
BT-EOL_Requestgibt nur dann etwas aus, wenn sie aktiv ist und das Login-Template angezeigt wird. Auf jedem anderen Template sowie bei deaktivierter Funktion bleibt das name-Attribut leer und die Schaltfläche löst keine Aktion aus.
Durch Klicken auf die Schaltfläche „Abbrechen” wird die gemerkte Adresse gelöscht und man wird zur Login-Seite zurückgeführt. Da sie sich im selben Formular wie das Codefeld befindet, benötigt sie das Attribut formnovalidate. Andernfalls verlangt der Browser zuerst einen Code, bevor er das Abbrechen überhaupt absendet.
FORM-EOL_Verify, um zu wissen, was zu tun ist.
Inhalt der Mail
EOL-Code als auch der EOL-MagicLink sind nur während der Erstellung der E-Mail gefüllt. Anschließend löscht der Shop den Code und den Link aus dem Speicher und bewahrt nur einen Prüfwert auf. Auf der Login-Seite liefern beide Tags deshalb keine Ergebnisse und können auch nicht als Klammerung verwendet werden.
EOL-MagicLink ist eine absolute HTTPS-Adresse ohne Sitzungskennung. Der Käufer kann den Link somit auf einem anderen Gerät öffnen als dem, auf dem er die E-Mail angefordert hat. Die Anmeldung findet dann auf dem Gerät statt, auf dem er klickt. Wenn in der Konfiguration MagicLinkBindIP = yes gesetzt ist, gelingt das nur, wenn beide Geräte mit derselben IP-Adresse im Internet unterwegs sind. Andernfalls erscheint die Fehlermeldung 5.
Die Felder EOL-CodeLength und EOL-ValidityMinutes geben den tatsächlich verwendeten Wert aus. Ein Wert außerhalb des zulässigen Bereichs wird dabei bereits an die Grenze gezogen. Beide greifen immer als Klammerung.
Fehler anzeigen
Für die Anforderung und die Prüfung gibt es jeweils ein eigenes Fehler-Tag. Als Einzeltag gibt es die Fehlernummer aus. Als Klammerung ohne Parameter greift es, sobald die Nummer ungleich 0 ist. Mit Parameter greift es bei genau dieser Nummer.EOL-RequestError
Fehler 5 tritt auch dann auf, wenn im Abschnitt
EmailOTPLoginMail kein Template eingetragen ist. Er ist somit der typische Fehler einer unvollständigen Einrichtung.
EOL-VerifyError
Bei den Fehlern 3 und 4 hängt die Folgeansicht von der Methode ab. Nach einer falschen Codeeingabe bleibt der Käufer in der Codeeingabe-Maske hängen. Nach einem ungültigen Link landet er in der Anforderungsansicht, oft auf einem Gerät, auf dem es gar keine gemerkte Adresse gibt.
Bei den Anforderungsfehlern 4 bis 6 setzt der Shop häufig zusätzlich
EOL-VerifyError auf 1, da keine gültige Anforderung entstanden ist. In diesem Fall sollte nur der Anforderungsfehler angezeigt werden, da der Käufer sonst zwei Meldungen für dasselbe Problem sieht.
Nach erfolgreicher Prüfung
Wenn Code oder Link stimmen, meldet der Shop den Käufer an. Dabei wird eine neue Sitzungskennung vergeben, der Zähler für Fehlversuche wird zurückgesetzt und der Zeitpunkt der letzten Anmeldung wird eingetragen. Wenn der Käufer eine Zwei-Faktor-Anmeldung eingerichtet hat, gelangt er anschließend nicht direkt ins Kundenkonto.Die Tags im Überblick
Verwandte Themen
- Wegweiser: Login per E-Mail ohne Passwort
- Referenz: Abschnitt EmailOTPLogin
- Referenz: Abschnitt EmailOTPLoginMail
- Referenz: FORM- (Formulare)
- Referenz: Schaltflächen für Kundenkonto und Anmeldung
