Factory renamed, emails can now be unique in game
authorRoland Häder <roland@mxchange.org>
Sat, 31 May 2008 11:06:19 +0000 (11:06 +0000)
committerRoland Häder <roland@mxchange.org>
Sat, 31 May 2008 11:06:19 +0000 (11:06 +0000)
.gitattributes
application/ship-simu/config.php
application/ship-simu/main/factories/class_ShipSimuNewsFactory.php [deleted file]
application/ship-simu/main/factories/class_ShipSimuWebNewsFactory.php [new file with mode: 0644]
application/ship-simu/templates/de/code/register.ctp
inc/classes/main/helper/web/class_WebFormHelper.php

index 4078b2195c09720863f59dcec2a29b1ad5f389c2..332a4187608ce6ad203f1b11e2eb2290826c28ac 100644 (file)
@@ -81,7 +81,7 @@ application/ship-simu/main/drives/class_BaseDrive.php -text
 application/ship-simu/main/drives/motor/.htaccess -text
 application/ship-simu/main/drives/motor/class_Motor.php -text
 application/ship-simu/main/factories/.htaccess -text
-application/ship-simu/main/factories/class_ShipSimuNewsFactory.php -text
+application/ship-simu/main/factories/class_ShipSimuWebNewsFactory.php -text
 application/ship-simu/main/parts/.htaccess -text
 application/ship-simu/main/parts/class_BaseShipPart.php -text
 application/ship-simu/main/parts/maschineroom/.htaccess -text
index b83f402032d81bd2fd9f1cddba98e2d269c7d8c5..57c81c0e33ec8ec8fa22f94f909f26dbfc53ed3f 100644 (file)
@@ -40,15 +40,18 @@ $cfg->setConfigEntry('form_method', "post");
 // CFG: FORM-TARGET
 $cfg->setConfigEntry('form_target', "_self");
 
-// CFG: REGISTRATION-REQUIRES-EMAIL
+// CFG: REGISTER-REQUIRES-EMAIL
 $cfg->setConfigEntry('register_requires_email', "Y");
 
-// CFG: REGISTRATION-INCLUDES-PROFILE
+// CFG: REGISTER-INCLUDES-PROFILE
 $cfg->setConfigEntry('register_includes_profile', "Y");
 
-// CFG: REGISTRATION-PERSONAL-DATA
+// CFG: REGISTER-PERSONAL-DATA
 $cfg->setConfigEntry('register_personal_data', "Y");
 
+// CFG: REGISTER-EMAIL-UNIQUE
+$cfg->setConfigEntry('register_email_unique', "Y");
+
 // CFG: CHAT-ENABLED-ICQ
 $cfg->setConfigEntry('chat_enabled_icq', "Y");
 
diff --git a/application/ship-simu/main/factories/class_ShipSimuNewsFactory.php b/application/ship-simu/main/factories/class_ShipSimuNewsFactory.php
deleted file mode 100644 (file)
index 6b34553..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/**
- * A class for the special news object factory
- *
- * @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 ShipSimuNewsFactory extends BaseFrameworkSystem {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-
-               // Set part description
-               $this->setObjectDescription("News-Objektefabrik f&uuml;r Ship-Simu");
-
-               // Create unique ID number
-               $this->createUniqueID();
-
-               // Clean up a little
-               $this->removeNumberFormaters();
-               $this->removeSystemArray();
-       }
-
-       /**
-        * Creates an instance of this class
-        *
-        * @return              $factoryInstance        An instance of this class
-        */
-       public final static function createShipSimuNewsFactory () {
-               // Get a new instance
-               $factoryInstance = new ShipSimuNewsFactory();
-
-               // Return the prepared instance
-               return $factoryInstance;
-       }
-
-       /**
-        * Create the news object itself here depending on the request
-        *
-        * @param       $requestInstance        An instance of a request class
-        * @return      $newsInstance           An instance of a news class
-        */
-       public function createNewObject (Requestable $requestInstance) {
-               // Do some stuff here
-       }
-}
-
-// [EOF]
-?>
diff --git a/application/ship-simu/main/factories/class_ShipSimuWebNewsFactory.php b/application/ship-simu/main/factories/class_ShipSimuWebNewsFactory.php
new file mode 100644 (file)
index 0000000..6b34553
--- /dev/null
@@ -0,0 +1,70 @@
+<?php
+/**
+ * A class for the special news object factory
+ *
+ * @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 ShipSimuNewsFactory extends BaseFrameworkSystem {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+
+               // Set part description
+               $this->setObjectDescription("News-Objektefabrik f&uuml;r Ship-Simu");
+
+               // Create unique ID number
+               $this->createUniqueID();
+
+               // Clean up a little
+               $this->removeNumberFormaters();
+               $this->removeSystemArray();
+       }
+
+       /**
+        * Creates an instance of this class
+        *
+        * @return              $factoryInstance        An instance of this class
+        */
+       public final static function createShipSimuNewsFactory () {
+               // Get a new instance
+               $factoryInstance = new ShipSimuNewsFactory();
+
+               // Return the prepared instance
+               return $factoryInstance;
+       }
+
+       /**
+        * Create the news object itself here depending on the request
+        *
+        * @param       $requestInstance        An instance of a request class
+        * @return      $newsInstance           An instance of a news class
+        */
+       public function createNewObject (Requestable $requestInstance) {
+               // Do some stuff here
+       }
+}
+
+// [EOF]
+?>
index 4511dfc079d2c931874499c6bc912256bbcd3b03..f579b1bf35a6ba59ec4ca4de5493181b6189cd2d 100644 (file)
@@ -22,6 +22,9 @@ if ($helper->ifRegisterRequiresEmailVerification()) {
        $helper->addInputTextField("email1");
        $helper->addFieldText("email2", "Wiederholung Email-Adresse:");
        $helper->addInputTextField("email2");
+       if ($helper->ifEmailMustBeUnique()) {
+               $helper->addFormNote("Die von dir eingegebene Email-Adresse darf nur einmal im Spiel verwendet worden sein.");
+       } // END - Unique email addresses
 } // END - email verification
 
 if ($helper->ifRegisterIncludesProfile()) {
index 00b7c0bdc0013f0f0bfacdc9f47400e96ad2e09c..fb0f1b24d39d2784c6629e09dd06cb1648816d75 100644 (file)
@@ -546,6 +546,16 @@ class WebFormHelper extends BaseHelper {
                return $required;
        }
 
+       /**
+        * Checks wether email addresses can only be once used
+        *
+        * @return      $isUnique
+        */
+       public function ifEmailMustBeUnique () {
+               $isUnique = ($this->getConfigInstance()->readConfig('register_email_unique') == "Y");
+               return $isUnique;
+       }
+
        /**
         * Checks wether the specified chat protocol is enabled in this form
         *