08.03.2013 Aufrufe

Tagebuch einer Extension-Entwicklung - Contao Wiki

Tagebuch einer Extension-Entwicklung - Contao Wiki

Tagebuch einer Extension-Entwicklung - Contao Wiki

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

'inputType' => 'text',<br />

'eval' => array('mandatory'=>false, 'minlength' =><br />

4, 'maxlength' => 4, 'rgxp' => 'digit')<br />

),<br />

aktivseit und aktivbis sollen nur eine Jahreszahl enthalten. Darum setze ich Minimal- und Maximallänge auf 4<br />

und lasse durch 'rgxp' nur Zahlen zu. Man hätte auch eine Dropdown-Box mit Jahreszahlen drin nehmen<br />

können. Ich denke beides hat Vor- und Nachteile. Sich durch DropDown-Boxen zu scrollen, die bei "1900"<br />

anfangen, wenn man nach "2004" will, ist auch kein Vergnügen. Das erste Feld setze ich mit tl_class => w50<br />

nach links, um das zweite Feld daneben darstellen zu können.<br />

Ich ergänze die Paletten-Definition um<br />

PHP-Code:<br />

{aktiv_legend:hide},aktiv,aktivseit,aktivbis;<br />

Da die Felder nicht so oft editiert werden, schließe ich die Palette defaultmäßig.<br />

Nun kommt schon ein kl<strong>einer</strong> Sonderfall: password. Dies soll das Paar-Passwort sein, was zum Eintragen von<br />

Turnierergebnissen oder geänderten persönlichen Daten im Frontend dient. Ich will das nur in eigenen PHP-<br />

Skripten nutzen, von daher habe ich hier alle Freiheiten, wie ich das realisiere.<br />

Ich möchte gerne, dass der Sportwart in diesem Feld ein Klartextpasswort eingeben kann. In die Datenbank soll<br />

aber nur der MD5-Hash des Passworts gelangen. Momentan plane ich, dass in dem Textfeld einfach der MD5-<br />

Hash angezeigt wird, wenn man aber etwas in dieses Feld eingibt, dass es dann aber durch einen Hook in den<br />

Hash umgewandelt wird, bevor es in der Datenbank gespeichert wird. Um die Realisation kümmere ich mich<br />

später. Erstmal soll es ein ganz normales Text-Feld sein:<br />

PHP-Code:<br />

'password' => array<br />

(<br />

'label' => &$GLOBALS['TL_LANG']<br />

['tl_gw_turnierpaare']['password'],<br />

'explanation' => &$GLOBALS['TL_LANG']<br />

['tl_gw_turnierpaare']['password_explanation'],<br />

'exclude' => false,<br />

'inputType' => 'text',<br />

'eval' => array('mandatory'=>false, 'minlength' =><br />

1, 'maxlength' => 64)<br />

)<br />

Dieses Feld soll (alleine) in <strong>einer</strong> eigenen Palette stehen, darum ergänze ich die Palettendefinition um:<br />

PHP-Code:<br />

{password_legend:hide},password;<br />

Zwischenstand der Backend-Maske:<br />

<strong>Tagebuch</strong> <strong>einer</strong> <strong>Extension</strong>-<strong>Entwicklung</strong> bis 104.odt Seite 34 von 121

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!