Filteres rewritten, birthday added, some fixes:
authorRoland Häder <roland@mxchange.org>
Tue, 18 Nov 2008 17:32:21 +0000 (17:32 +0000)
committerRoland Häder <roland@mxchange.org>
Tue, 18 Nov 2008 17:32:21 +0000 (17:32 +0000)
- Birthday (day and month as 2-digit number and year as 4-digit number) added
- All filters now extends the BaseFilter class
- Typo (Startuphilfe -> Starthilfe) fixed
- Minor improvements

33 files changed:
.gitattributes
application/admin/templates/de/code/action_admin_login_profile.ctp
application/admin/templates/de/code/login_form.ctp
application/blog/templates/de/code/action_blog_login_profile.ctp
application/blog/templates/de/code/login_form.ctp
application/ship-simu/config.php
application/ship-simu/main/commands/web/class_WebShipsimuProfileCommand.php
application/ship-simu/main/commands/web/class_WebShipsimuRegisterCommand.php
application/ship-simu/main/filter/goverment/class_ShipSimuGovermentPaysStartupHelpFilter.php
application/ship-simu/main/filter/goverment/class_ShipSimuGovermentPaysTrainingFilter.php
application/ship-simu/main/filter/page/class_RefillPageFilter.php
application/ship-simu/main/filter/validator/class_RefillRequestValidatorFilter.php
application/ship-simu/main/filter/verifier/.htaccess [new file with mode: 0644]
application/ship-simu/main/filter/verifier/class_BirthdayVerifierFilter.php [new file with mode: 0644]
application/ship-simu/templates/de/code/action_ship_simu_login_goverment_startup_help.ctp
application/ship-simu/templates/de/code/action_ship_simu_login_profile.ctp
application/ship-simu/templates/de/code/action_ship_simu_login_refill.ctp
application/ship-simu/templates/de/code/login_form.ctp
application/ship-simu/templates/de/code/register_form.ctp
application/shoutbox/templates/de/code/action_shoutbox_login_profile.ctp
application/shoutbox/templates/de/code/login_form.ctp
application/todo/templates/de/code/action_todo_login_profile.ctp
application/todo/templates/de/code/login_form.ctp
inc/classes/main/filter/change/class_EmailChangeFilter.php
inc/classes/main/filter/change/class_PasswordChangeFilter.php
inc/classes/main/filter/class_
inc/classes/main/filter/crypto/class_CaptchaEncryptFilter.php
inc/classes/main/filter/payment/class_PaymentDiscoveryFilter.php
inc/classes/main/filter/update/class_UserStatusConfimedUpdateFilter.php
inc/classes/main/filter/update/class_UserUpdateFilter.php
inc/classes/main/filter/verifier/class_UserStatusVerifierFilter.php
inc/classes/main/filter/verifier/class_UserUnconfirmedVerifierFilter.php
inc/classes/main/helper/web/class_BaseWebHelper.php

index ca83c33..0754e3c 100644 (file)
@@ -218,6 +218,8 @@ application/ship-simu/main/filter/page/.htaccess -text
 application/ship-simu/main/filter/page/class_RefillPageFilter.php -text
 application/ship-simu/main/filter/validator/.htaccess -text
 application/ship-simu/main/filter/validator/class_RefillRequestValidatorFilter.php -text
+application/ship-simu/main/filter/verifier/.htaccess -text
+application/ship-simu/main/filter/verifier/class_BirthdayVerifierFilter.php -text
 application/ship-simu/main/goverment/.htaccess -text
 application/ship-simu/main/goverment/class_SimplifiedGoverment.php -text
 application/ship-simu/main/login/.htaccess -text
index a506218..8957cf9 100644 (file)
@@ -16,7 +16,7 @@ $helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
 $helper->addInputPasswordField('pass2');
 
 // Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helper->getValueField('email')."</span>");
 
 // Only for changing email address
 if ($helper->ifEmailChangeAllowed()) {
index 700f88f..688dc12 100644 (file)
@@ -33,7 +33,7 @@ if ($helper->ifLoginIsEnabled()) {
 
        // CAPTCHA enabled?
        if ($helper->ifFormSecuredWithCaptcha()) {
-               $helper->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+               $helper->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
                $helper->addCaptcha();
        } // END - if
 
index c76abd3..7a44b9a 100644 (file)
@@ -16,7 +16,7 @@ $helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
 $helper->addInputPasswordField('pass2');
 
 // Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helper->getValueField('email')."</span>");
 
 // Only for changing email address
 if ($helper->ifEmailChangeAllowed()) {
index de32aa5..44492ac 100644 (file)
@@ -33,7 +33,7 @@ if ($helper->ifLoginIsEnabled()) {
 
        // CAPTCHA enabled?
        if ($helper->ifFormSecuredWithCaptcha()) {
-               $helper->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+               $helper->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
                $helper->addCaptcha();
        } // END - if
 
index baf8470..5c18fdc 100644 (file)
@@ -58,6 +58,9 @@ $cfg->setConfigEntry('register_personal_data', "Y");
 // CFG: REGISTER-EMAIL-UNIQUE
 $cfg->setConfigEntry('register_email_unique', "Y");
 
+// CFG: PROFILE-INCLUDES-BIRTHDAY
+$cfg->setConfigEntry('profile_includes_birthday', "Y");
+
 // CFG: CHAT-ENABLED-ICQ
 $cfg->setConfigEntry('chat_enabled_icq', "Y");
 
@@ -196,6 +199,12 @@ $cfg->setConfigEntry('captcha_profile_verifier_filter', "GraphicalCodeCaptchaVer
 // CFG: CONFIRM-CODE-VERIFIER-FILTER
 $cfg->setConfigEntry('confirm_code_verifier_filter', "ConfirmCodeVerifierFilter");
 
+// CFG: BIRTHDAY-REGISTER-VERIFIER-FILTER
+$cfg->setConfigEntry('birthday_register_verifier_filter', "BirthdayVerifierFilter");
+
+// CFG: BIRTHDAY-PROFILE-VERIFIER-FILTER
+$cfg->setConfigEntry('birthday_profile_verifier_filter', "BirthdayVerifierFilter");
+
 // CFG: REFILL-PAGE-FILTER
 $cfg->setConfigEntry('refill_page_filter', "RefillPageFilter");
 
@@ -268,8 +277,11 @@ $cfg->setConfigEntry('shipsimu_guest_login_captcha', "GraphicalCodeCaptcha");
 // CFG: SHIPSIMU-PROFILE-CAPTCHA
 $cfg->setConfigEntry('shipsimu_profile_captcha', "GraphicalCodeCaptcha");
 
-// CFG: REFILL-FORM-CAPTCHA
-$cfg->setConfigEntry('refill_form_captcha', "GraphicalCodeCaptcha");
+// CFG: SHIPSIMU-REFILL-CAPTCHA
+$cfg->setConfigEntry('shipsimu_refill_captcha', "GraphicalCodeCaptcha");
+
+// CFG: SHIPSIMU-GOVERMENT-STARTUP-CAPTCHA
+$cfg->setConfigEntry('shipsimu_goverment_startup_captcha', "GraphicalCodeCaptcha");
 
 // CFG: CAPTCHA-STRING-LENGTH
 $cfg->setConfigEntry('captcha_string_length', 5);
@@ -292,8 +304,11 @@ $cfg->setConfigEntry('shipsimu_guest_login_captcha_secured', "Y");
 // CFG: SHIPSIMU-PROFILE-CAPTCHA-SECURED
 $cfg->setConfigEntry('shipsimu_profile_captcha_secured', "Y");
 
-// CFG: REFILL-FORM-CAPTCHA-SECURED
-$cfg->setConfigEntry('refill_form_captcha_secured', "Y");
+// CFG: SHIPSIMU-REFILL-CAPTCHA-SECURED
+$cfg->setConfigEntry('shipsimu_refill_captcha_secured', "Y");
+
+// CFG: SHIPSIMU-GOVERMENT-STARTUP-CAPTCHA-SECURED
+$cfg->setConfigEntry('shipsimu_goverment_startup_captcha_secured', "Y");
 
 // CFG: BLOCK-SHOWS-REGISTRATION
 $cfg->setConfigEntry('block_shows_registration', "Y");
index e8aff7d..3d66614 100644 (file)
@@ -136,6 +136,9 @@ class WebShipsimuProfileCommand extends BaseCommand implements Commandable {
                // Validate CAPTCHA input
                $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('captcha_profile_verifier_filter'));
 
+               // Validate birthday input
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('birthday_profile_verifier_filter'));
+
                // Email changed
                $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('email_change_filter'));
 
index 56072d6..c47c4a6 100644 (file)
@@ -111,6 +111,9 @@ class WebShipsimuRegisterCommand extends BaseCommand implements Commandable {
 
                // Validate CAPTCHA input
                $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('captcha_register_verifier_filter'));
+
+               // Validate birthday
+               $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('birthday_register_verifier_filter'));
        }
 }
 
index 3d02ad9..6917edc 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ShipSimuGovermentPaysStartupHelpFilter extends BaseFrameworkSystem implements Filterable {
+class ShipSimuGovermentPaysStartupHelpFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
@@ -30,10 +30,6 @@ class ShipSimuGovermentPaysStartupHelpFilter extends BaseFrameworkSystem impleme
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
@@ -62,7 +58,7 @@ class ShipSimuGovermentPaysStartupHelpFilter extends BaseFrameworkSystem impleme
                $userInstance = Registry::getRegistry()->getInstance('user');
 
                // Now simply check for it
-               if (($userInstance instanceof ManageableMember) || ($userInstance->ifGovermentPaysStartupHelp() === false)) {
+               if ((!$userInstance instanceof ManageableMember) || ($userInstance->ifGovermentPaysStartupHelp() === false)) {
                        // Request is invalid
                        $requestInstance->requestIsValid(false);
 
index 466059c..b8b8dd8 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class ShipSimuGovermentPaysTrainingFilter extends BaseFrameworkSystem implements Filterable {
+class ShipSimuGovermentPaysTrainingFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
@@ -30,10 +30,6 @@ class ShipSimuGovermentPaysTrainingFilter extends BaseFrameworkSystem implements
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
index 448605b..c87f21e 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class RefillPageFilter extends BaseFrameworkSystem implements Filterable {
+class RefillPageFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
@@ -30,10 +30,6 @@ class RefillPageFilter extends BaseFrameworkSystem implements Filterable {
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
index 06643e0..c33f5e2 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class RefillRequestValidatorFilter extends BaseFrameworkSystem implements Filterable {
+class RefillRequestValidatorFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
@@ -30,10 +30,6 @@ class RefillRequestValidatorFilter extends BaseFrameworkSystem implements Filter
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
diff --git a/application/ship-simu/main/filter/verifier/.htaccess b/application/ship-simu/main/filter/verifier/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/ship-simu/main/filter/verifier/class_BirthdayVerifierFilter.php b/application/ship-simu/main/filter/verifier/class_BirthdayVerifierFilter.php
new file mode 100644 (file)
index 0000000..cc15989
--- /dev/null
@@ -0,0 +1,63 @@
+<?php
+/**
+ * A verifier filter for birthday data
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
+ * @license            GNU GPL 3.0 or any newer version
+ * @link               http://www.ship-simu.org
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class BirthdayVerifierFilter extends BaseFilter implements Filterable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this filter class
+        *
+        * @return      $filterInstance         An instance of this filter class
+        */
+       public final static function createBirthdayVerifierFilter () {
+               // Get a new instance
+               $filterInstance = new BirthdayVerifierFilter();
+
+               // Return the instance
+               return $filterInstance;
+       }
+
+       /**
+        * Executes the filter with given request and response objects
+        *
+        * @param       $requestInstance        An instance of a class with an Requestable interface
+        * @param       $responseInstance       An instance of a class with an Responseable interface
+        * @return      void
+        * @todo        0% done
+        */
+       public function execute (Requestable $requestInstance, Responseable $responseInstance) {
+               // Implement this!
+               $this->partialStub("Please implement this method.");
+       }
+}
+
+// [EOF]
+?>
index 23e4192..26b5ece 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 // Get form helper instance
-$helperInstance = ObjectFactory::createObjectByConfiguredName('web_form_helper', array($this, 'shipsimu_startup_form'));
+$helperInstance = ObjectFactory::createObjectByConfiguredName('web_form_helper', array($this, 'shipsimu_goverment_startup'));
 
 // Prefetch user instance
 $helperInstance->prefetchValueInstance('user');
@@ -8,17 +8,55 @@ $helperInstance->prefetchValueInstance('user');
 // Add main form group
 $helperInstance->addFormNote('reality_warning', "WARNUNG: Bitte dieses Formular nicht mit echten Angaben ausf&uuml;llen!");
 
+// Add group for personal data
+$helperInstance->addFormGroup('persona_data', "Deine pers&ouml;nliche Daten, die f&uuml;r die Beantragung n&ouml;tig sind:");
+
+// Display email, surname and family name
+$helperInstance->addFormNote('surname', "Vorname: <span class=\"persona_data\">".$helperInstance->getValueField('surname')."</span>");
+$helperInstance->addFormNote('family', "Nachname: <span class=\"persona_data\">".$helperInstance->getValueField('family')."</span>");
+$helperInstance->addFormNote('email', "Email-Adresse: <span class=\"persona_data\">".$helperInstance->getValueField('email')."</span>");
+$helperInstance->addFormNote('birthday', "Geburtstag: <span class=\"persona_data\">".$helperInstance->getValueField('birth_day').".".$helperInstance->getValueField('birth_month').".".$helperInstance->getValueField('birth_year')."</span>");
+
+// Add link placeholder for profile page
+$helperInstance->addFormNote('profile', "Stimmen die Daten noch? {?shipsimu_profile_link?}");
+
+// CAPTCHA enabled?
+if ($helperInstance->ifFormSecuredWithCaptcha()) {
+       $helperInstance->addFormGroup('captcha_user', "Die virtuelle Beantragung von Starthilfe ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du die Starthilfe beantragen kannst.");
+       $helperInstance->addCaptcha();
+} // END - if
+
+// Ask again for current account password
+$helperInstance->addFormGroup('password', "Bitte gebe zur Best&auml;tigung dein derzeitiges Passwort ein.");
+$helperInstance->addFieldText('password', "Derzeitiges Passwort:");
+$helperInstance->addInputPasswordField('password');
+
+// Final notices
+$helperInstance->addFormGroup('buttons', "Sind alle Daten nun korrekt eingegeben? Dann sende sie mit einem Klick einfach ab!");
+$helperInstance->addInputResetButton("Alles nochmal eingeben");
+$helperInstance->addInputSubmitButton("Starthilfe beantragen");
+$helperInstance->addFormNote('data_protection', "Deine Daten werden nach den g&uuml;ltigen Datenschutzgesetzten gespeichert und werden nicht an Dritte weitergegeben. Weiteres dazu siehe Link &quot;Datenschutz&quot;.");
+
 // Flush the finished form
 $helperInstance->flushContent();
 
+// Get link helper for profile link
+$linkInstance = ObjectFactory::createObjectByConfiguredName('web_link_helper', array($this, 'shipsimu_profile_link', 'index.php?app={?app_short_name?}&amp;page=login_area'));
+
+// Add action
+$linkInstance->addActionLinkById('profile', 'goto_profile_link');
+
+// Flush the finished form
+$linkInstance->flushContent();
+
 // [EOC]
 ?>
 <div id="goverment_frame">
        <div id="goverment_header">
-               Virtuelle Beantragung von Startuphilfe
+               Virtuelle Beantragung von Starthilfe
        </div>
 
        <div id="goverment_form">
-               {?shipsimu_startup_form?}
+               {?shipsimu_goverment_startup?}
        </div>
 </div>
index 6ec1ff2..c55cab7 100644 (file)
@@ -50,6 +50,16 @@ if ($helperInstance->ifRegisterIncludesPersonaData()) {
        $helperInstance->addInputTextFieldWithDefault('street');
        $helperInstance->addFieldText('city', "Wohnort:");
        $helperInstance->addInputTextFieldWithDefault('city');
+
+       // Include birthday?
+       if ($helperInstance->ifProfileIncludesBirthDay()) {
+               $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankesch&ouml;n erh&auml;lst du interessante Pr&auml;mien - ausschliesslich per Email - zum Geburtstag zugesandt! G&uuml;ltiges Format: TT.MM.JJJJ");
+               $helperInstance->addInputTextField('birth_day');
+               $helperInstance->addFieldText('birth_day', ".");
+               $helperInstance->addInputTextField('birth_month');
+               $helperInstance->addFieldText('birth_day', ".");
+               $helperInstance->addInputTextField('birth_year');
+       } // END - if
 } // END - if
 
 // Add sub group for zip code
@@ -106,7 +116,7 @@ if ($helperInstance->ifRulesHaveChanged()) {
 
 // CAPTCHA enabled?
 if ($helperInstance->ifFormSecuredWithCaptcha()) {
-       $helperInstance->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+       $helperInstance->addFormGroup('captcha_user', "Das &Auml;ndern von Profildaten ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit deine &Auml;nderungen gespeichert werden k&ouml;nnen.");
        $helperInstance->addCaptcha();
 } // END - if
 
index 4bca46d..84c29c0 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 // Neue Helper-Instanz holen
-$helperInstance = ObjectFactory::createObjectByConfiguredName('web_form_helper', array($this, 'refill_form'));
+$helperInstance = ObjectFactory::createObjectByConfiguredName('web_form_helper', array($this, 'shipsimu_refill'));
 
 // Pre-fetch payment types
 $helperInstance->prefetchValueInstance('payments');
@@ -55,6 +55,6 @@ $helperInstance->flushContent();
                Jetzt dein {?currency?}-Konto aufladen!
        </div>
        <div class="content_body">
-               {?refill_form?}
+               {?shipsimu_refill?}
        </div>
 </div>
index f493423..560b79f 100644 (file)
@@ -33,7 +33,7 @@ if ($helperInstance->ifLoginIsEnabled()) {
 
        // CAPTCHA enabled?
        if ($helperInstance->ifFormSecuredWithCaptcha()) {
-               $helperInstance->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+               $helperInstance->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
                $helperInstance->addCaptcha();
        } // END - if
 
index 5426b38..8fc6549 100644 (file)
@@ -15,6 +15,7 @@ $helperInstance->addInputPasswordField('pass1');
 $helperInstance->addFieldText('pass2', "Passwortwiederholung:");
 $helperInstance->addInputPasswordField('pass2');
 
+// Does this registration require an email?
 if ($helperInstance->ifRegisterRequiresEmailVerification()) {
        $helperInstance->addFormGroup('email', "Bitte gebe deine Email zweimal (ein zweites Mal zur Best&auml;tigung) ein, damit wir dir deinen Freischaltlink zusenden k&ouml;nnen.");
        $helperInstance->addFieldText('email1', "Email-Adresse:");
@@ -22,12 +23,13 @@ if ($helperInstance->ifRegisterRequiresEmailVerification()) {
        $helperInstance->addFieldText('email2', "Wiederholung Email-Adresse:");
        $helperInstance->addInputTextField('email2');
 
+       // Must the email address be unique in this system?
        if ($helperInstance->ifEmailMustBeUnique()) {
                $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
-       } // END - Unique email addresses
-
-} // END - email verification
+       } // END - if
+} // END - if
 
+// Shall we also ask some personal data to complete the profile?
 if ($helperInstance->ifRegisterIncludesProfile()) {
        $helperInstance->addFormGroup('profile', "Hier kannst du zus&auml;tzlich deine Profildaten vorweg eingeben, du kannst sie aber auch nach dem Login vervollst&auml;ndigen!");
 
@@ -35,7 +37,12 @@ if ($helperInstance->ifRegisterIncludesProfile()) {
                $helperInstance->addFormSubGroup('email', "Die Angabe deiner Email-Adresse ist nur dann n&ouml;tig, wenn du auch Email-Benachrichtigungen (<span id=\"add_note\">*1</span>) haben m&ouml;chtest.");
                $helperInstance->addFieldText('email1', "Email-Adresse:");
                $helperInstance->addInputTextField('email1');
-       } // END - No email verification
+
+               // Must the email address be unique in this system?
+               if ($helperInstance->ifEmailMustBeUnique()) {
+                       $helperInstance->addFormNote('email', "Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+               } // END - if
+       } // END - if
 
        // Persoenliche Daten mit in der Anmeldung abfragen?
        if ($helperInstance->ifRegisterIncludesPersonaData()) {
@@ -48,7 +55,17 @@ if ($helperInstance->ifRegisterIncludesProfile()) {
                $helperInstance->addInputTextField('street');
                $helperInstance->addFieldText('city', "Wohnort:");
                $helperInstance->addInputTextField('city');
-       } // END - Persona data
+
+               // Include birthday?
+               if ($helperInstance->ifProfileIncludesBirthDay()) {
+                       $helperInstance->addFormSubGroup('birthday', "Verrate uns doch dein Geburtsdatum, als Dankesch&ouml;n erh&auml;lst du interessante Pr&auml;mien - ausschliesslich per Email - zum Geburtstag zugesandt! G&uuml;ltiges Format: TT.MM.JJJJ");
+                       $helperInstance->addInputTextField('birth_day');
+                       $helperInstance->addFieldText('birth_day', ".");
+                       $helperInstance->addInputTextField('birth_month');
+                       $helperInstance->addFieldText('birth_day', ".");
+                       $helperInstance->addInputTextField('birth_year');
+               } // END - if
+       } // END - if
 
        $helperInstance->addFormSubGroup('zip', "Magst du uns auch deine Postleitzahl verraten?");
        $helperInstance->addFieldText('zip', "Postleitzahl:");
index 85367c4..dd27e8a 100644 (file)
@@ -16,7 +16,7 @@ $helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
 $helper->addInputPasswordField('pass2');
 
 // Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helper->getValueField('email')."</span>");
 
 // Only for changing email address
 if ($helper->ifEmailChangeAllowed()) {
index f6ca6fb..f3dc1f1 100644 (file)
@@ -33,7 +33,7 @@ if ($helper->ifLoginIsEnabled()) {
 
        // CAPTCHA enabled?
        if ($helper->ifFormSecuredWithCaptcha()) {
-               $helper->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+               $helper->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
                $helper->addCaptcha();
        } // END - if
 
index ee4f270..6853ae4 100644 (file)
@@ -16,7 +16,7 @@ $helper->addFieldText('pass2', "Neues Passwort, Wiederholung:");
 $helper->addInputPasswordField('pass2');
 
 // Display current email
-$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span id=\"displayed_field\">".$helper->getValueField('email')."</span>");
+$helper->addFormNote('current_email', "Derzeitige Email-Adresse: <span class=\"persona_data\">".$helper->getValueField('email')."</span>");
 
 // Only for changing email address
 if ($helper->ifEmailChangeAllowed()) {
index 683145b..f9ed480 100644 (file)
@@ -33,7 +33,7 @@ if ($helper->ifLoginIsEnabled()) {
 
        // CAPTCHA enabled?
        if ($helper->ifFormSecuredWithCaptcha()) {
-               $helper->addFormGroup('captcha_user', "Unser Benuzter-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
+               $helper->addFormGroup('captcha_user', "Das Benutzer-Login ist durch ein CAPTCHA gesch&uuml;tzt. Bitte wiederhole den angezeigten Code, damit du dich einloggen kannst.");
                $helper->addCaptcha();
        } // END - if
 
index d213a22..276119c 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class EmailChangeFilter extends BaseFrameworkSystem implements Filterable {
+class EmailChangeFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index 5a604fd..d1da065 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class PasswordChangeFilter extends BaseFrameworkSystem implements Filterable {
+class PasswordChangeFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index 4aff513..c249762 100644 (file)
@@ -30,10 +30,6 @@ class ???Filter extends BaseFrameworkSystem implements Filterable {
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
index 01774b7..6abe368 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class CaptchaEncryptFilter extends BaseFrameworkSystem implements Filterable {
+class CaptchaEncryptFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index 2f12e5b..38fb46e 100644 (file)
@@ -23,7 +23,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class PaymentDiscoveryFilter extends BaseFrameworkSystem implements Filterable {
+class PaymentDiscoveryFilter extends BaseFilter implements Filterable {
        /**
         * Action name for payment discovery
         */
@@ -37,10 +37,6 @@ class PaymentDiscoveryFilter extends BaseFrameworkSystem implements Filterable {
        protected function __construct () {
                // Call parent constructor
                parent::__construct(__CLASS__);
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
        }
 
        /**
index 7e30148..b9ac082 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class UserStatusConfimedUpdateFilter extends BaseFrameworkSystem implements Filterable {
+class UserStatusConfimedUpdateFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index be0c9a8..c55989c 100644 (file)
@@ -22,7 +22,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class UserUpdateFilter extends BaseFrameworkSystem implements Filterable {
+class UserUpdateFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index d2d53d8..6722d52 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class UserStatusVerifierFilter extends BaseFrameworkSystem implements Filterable {
+class UserStatusVerifierFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index fd5bb60..f2982ed 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class UserUnconfirmedVerifierFilter extends BaseFrameworkSystem implements Filterable {
+class UserUnconfirmedVerifierFilter extends BaseFilter implements Filterable {
        /**
         * Protected constructor
         *
index 19b5be3..0da3e0a 100644 (file)
@@ -65,6 +65,16 @@ class BaseWebHelper extends BaseHelper {
        }
 
        /**
+        * Checks wether for birthday shall be asked
+        *
+        * @return      $required       Wether birthday shall be asked
+        */
+       public function ifProfileIncludesBirthDay () {
+               $required = ($this->getConfigInstance()->readConfig('profile_includes_birthday') === "Y");
+               return $required;
+       }
+
+       /**
         * Checks wether email addresses can only be once used
         *
         * @return      $isUnique