User selbst anmelden

Nun wollen wir den Zugang so abändern, dass sich User selbst anmelden können. Zugriff erhalten diese aber erst nach der Freischaltung durch den Administrator.

Dazu benötigen wir wieder einige Templates.
login/new - Neuanmeldeformular
login/edit - Formular zum Ändern der Userdaten
login/newmail - eMail an den Anwender nach erfolgter Anmeldung
login/newmes - Anzeige nach erfolgter Anmeldung

Das Kennwort soll vom System generiert und den Anwendern per eMail zugesandt werden. Dadurch kontrollieren wir ob die angegebenen eMail-Adressen korrekt sind. Außerdem müssen wir neben dem Benutzernamen noch die eMail-Adresse speichern.

login/new
<form method=post action={action}>
<br>Hiermit melden Sie sich als neuer User am System an. Wir versichern, daß Ihre Angaben vertraulich behandelt werden und nicht weitergegeben werden.<br>
<br>
<span class="highlighted">{Error}</span><br>
<span style="width:14em;">Gewünschter Username:</span><input size=40 type=text name=Username value="{Username}"><br>
<span style="width:14em;">eMail:</span><input size=40 type=text name=eMail value="{eMail}"><br>
<span style="width:14em;"> </span><input class=btn type=submit name=login value="Neu anmelden"><br>
</form>


login/edit
<form method=post action={action}>
<br><br>Änderung Ihrer Daten.<br>
Die Eingabe des Kennwortes ist nur notwendig, falls Sie dieses ändern wollen.<br>
<br>
<span class="highlighted">{Error}</span><br>
<span style="width:14em;">Gewünschter Username:</span><input size=20 type=text name=Username value="{Username}"><br>
<span style="width:14em;">Gewünschtes Kennwort:</span><input size=20 type=password name=PW1><br>
<span style="width:14em;">Kennwort Wiederholung:</span><input size=20 type=password name=PW2><br>
<span style="width:14em;">eMail:</span><input size=20 type=text name=eMail value="{eMail}"><br>
<span style="width:14em;"> </span><input class=btn type=submit name=login value="Daten speichern"><br>
</form>


login/newmail
tdbmail
{eMail}
informer@werners-web-werkstatt.de
Useranmeldung
Hallo {Username},
vielen Dank für Ihre Anmeldung. Ihre Daten sind:
Username: {Username}
Kennwort: {PW}
eMail:    {eMail}


login/newmes
Vielen Dank für Ihre Anmeldung.<br>
Wir haben die folgenden Daten erhalten:<br>
Username: {Username}<br>
eMail: {eMail}<br>


Was jetzt noch fehlt, ist der Aufruf zur Neuanmeldung. Dazu platzieren wir einen Link im Login-Formular. Dieses wird angezeigt, wenn eine Seite betreten wird, für die der aktuelle User keine Berechtigung hat - für eine Neuanmeldung der optimale Platz.
Dazu fügen wir ans Ende des login/form-Templates die Zeile an:
<a href='{link="user:new"}'>Ich habe noch keinen Usernamen / Neuanmeldung</a><br>


Außerdem soll der User, wenn er angemeldet ist, seine Daten ändern können. Im main-Template haben wir ja bereits einen Link zur Abmeldung. Diesen ergänzen wir um einen Link, der zum Userdaten ändern führt.
Bisher haben wir:
{switch="user"}<a class="extramenu" href="{link="user:logout"}">{user:Username} abmelden</a><br><br>{/switch}

Das wird erweitert zu:
{switch="user"}
<a class="extramenu" href="{link="user:logout"}">{user:Username} abmelden</a><br>
<a class="extramenu" href="{link="user:edit"}">Daten ändern</a><br><br>
{/switch}


Wir müssen noch noch sicher stellen, dass in der cms.ini der Eintrag mailpw=1 vorhanden ist. Das geth am einfachsten, wenn wir zunächst über den Reiter Tools Konfiguration/ExtraOption aufrufen und dann, über die entsprechende Checkbox, den Schalter setzen.

Über Tools Konfiguration/Edit_ini bearbeiten wir cms.ini und fügen unter USER die Zeile
extra_1=eMail
ein. Damit haben wir die eMail-Adresse als zusätzliches Feld definiert.


So das war's. Und so sieht das Ergebnis aus:

Link zur Neuanmeldung im Login-Screen:


Neuanmeldungsformular:


Nachricht nach der Neuanmeldung:



Wichtige Hinweise:

Ob die neu angemeldeten User sofort mit Ihrem "frischen" Login arbeiten können, oder ob der Administrator sie freischalten muss, hängt von einem Schalter ab: waiting_default
Ist dieser gesetzt, erhalten neue User den Status "waiting". Damit haben sie noch keinen Zugriff. Erst wenn der Administrator über die Userverwaltung den Status waiting entfernt hat, ist der Zugriff möglich.
Am einfachsten kann diese Option unter Tools -> Konfiguration/Sonstige Einstellungen gesetzt werden.

Damit ein User seine Daten selbst ändern darf, muss der Status no_change bei ihm abgeschaltet sein. Auch hierfür gibt es eine Standard-Belegung bei neuen Usern. Es handelt sich dabei um die Option no_change_default.

Ob sich User generell selbst neu anmelden dürfen, wird über die Option self festgelegt. Diese muss aktiviert sein.

eforia® web manager Dokumentation
Stand V 3.01 / 20.12.2010
© Horst Klier
http://www.klier.net
Impressum