In Advanced Login 1 wird es ein komplett überarbeitetes Templatesystem geben. Euch als Webmaster stehen nun wesentlich mehr Möglichkeiten zur Verfügung Advanced Login genau so in eure Webseiten zu integrieren, wie ihr es möchtet.
Beispiel:
Benutzername: <input type="text" name="uname" value="" />
<!--ONERROR[uname][empty]: <font color="red">Sie haben keinen Benutzernamen angegeben!</font> -->ergibt nachdem z.B. das Registrationsformular ohne Eingabe eines Benutzernamens abgeschickt wurde folgende Ausgabe:
Ein Bestandteil des neuen Templatesystems ist die automatische Erkennung von Formularfeldern. Wenn ein Formular abgeschickt wurde, weist Advanced Login den Formularfeldern automatisch die abgeschickten Werte zu. (ausgenommen Passwort-Felder. Sollte eine Einstellung gewünscht werden, dass der Wert bei diesen ebenfalls übernommen werden soll, schreibt mir doch kurz eine E-Mail :] ) Dadurch lassen nun auch Standardwerte für die Formulare festlegen.
Beispiel:
Webseite: <input type="text" name="website" value="http://" />
<!--ONERROR[website][wrongsyntax]: <font color="red">Sie haben keine gültige Webseite angegeben</font> -->ergibt beim Aufruf folgende Ausgabe:
und nach dem Absenden des Formulars mit dem Wert "testtesttest" folgende:
Dies ist jedoch nicht nur bei Textfeldern möglich. Auch Textbereiche, Selectfelder, Radiobuttons und erstmals auch Checkboxen werden unterstützt.
Eine weitere Neuerung ist die Funktion {foreach_profilfield}{/foreach_profilfield}. Der HTML-Code zwischen diesen beiden Tags wird für jedes Profilfeld wiederholt. Das bedeutet, dass ihr standardmäßig ein Template ausgeliefert bekommt, bei dem ihr nach dem Erstellen von weiteren Profilfeldern die Templates nicht mehr bearbeiten müsst. Wenn ihr nur einzelne Felder selbst erstellen wollt und die restlichen automatisch generiert werden sollen, so könnt ihr mittels {foreach_profilfield -uname -email}{/foreach_profilfield} auch Ausnahmen hinzufügen.
Damit das Ganze auch sinnvoll verwendet werden kann, gibt es nun auch die Möglichkeit Verzweigungen mittels {if}{else}{/if} in das Template einzubauen. Mehr dazu später... ;)