X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=inc%2Fclasses%2Fmain%2Fuser%2Fclass_BaseUser.php;h=ce67c061f9128cbde18ffbbae13484eb093e6698;hp=c5cdfa9ad886019c36f6c643a51f447828a91fad;hb=cbd2f71aee1c3daca3d11acc346c79757852316f;hpb=361e6320e50a8bb1a3ccb675388b8042361669ae diff --git a/inc/classes/main/user/class_BaseUser.php b/inc/classes/main/user/class_BaseUser.php index c5cdfa9a..ce67c061 100644 --- a/inc/classes/main/user/class_BaseUser.php +++ b/inc/classes/main/user/class_BaseUser.php @@ -2,11 +2,11 @@ /** * A general user class * - * @author Roland Haeder + * @author Roland Haeder * @version 0.0.0 - * @copyright Copyright (c) 2007 - 2009 Roland Haeder, this is free software + * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Core Developer Team * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org + * @link http://www.shipsimu.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 @@ -21,7 +21,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -class BaseUser extends BaseFrameworkSystem { +class BaseUser extends BaseFrameworkSystem implements Updateable { // Exception constances const EXCEPTION_USERNAME_NOT_FOUND = 0x150; const EXCEPTION_USER_EMAIL_NOT_FOUND = 0x151; @@ -30,7 +30,7 @@ class BaseUser extends BaseFrameworkSystem { /** * Username of current user */ - private $userName = ""; + private $userName = ''; /** * User id of current user @@ -40,7 +40,7 @@ class BaseUser extends BaseFrameworkSystem { /** * Email of current user */ - private $email = ""; + private $email = ''; /** * Protected constructor @@ -51,10 +51,6 @@ class BaseUser extends BaseFrameworkSystem { protected function __construct ($className) { // Call parent constructor parent::__construct($className); - - // Clean up a little - $this->removeNumberFormaters(); - $this->removeSystemArray(); } /** @@ -116,13 +112,13 @@ class BaseUser extends BaseFrameworkSystem { } /** - * Determines wether the username exists or not + * Determines whether the username exists or not * - * @return $exists Wether the username exists + * @return $exists Whether the username exists */ public function ifUsernameExists () { // By default the username does not exist - $exists = false; + $exists = FALSE; // Is a previous result there? if (is_null($this->getResultInstance())) { @@ -152,7 +148,7 @@ class BaseUser extends BaseFrameworkSystem { // Search for it if ($this->getResultInstance()->next()) { // Entry found - $exists = true; + $exists = TRUE; } // END - if // Return the status @@ -160,13 +156,13 @@ class BaseUser extends BaseFrameworkSystem { } /** - * Determines wether the email exists or not + * Determines whether the email exists or not * - * @return $exists Wether the email exists + * @return $exists Whether the email exists */ public function ifEmailAddressExists () { // By default the email does not exist - $exists = false; + $exists = FALSE; // Is a previous result there? if (is_null($this->getResultInstance())) { @@ -196,10 +192,10 @@ class BaseUser extends BaseFrameworkSystem { // Search for it if ($this->getResultInstance()->next()) { // Entry found - $exists = true; + $exists = TRUE; // Is the username set? - if ($this->getUserName() == "") { + if ($this->getUserName() == '') { // Get current entry $currEntry = $this->getResultInstance()->current(); @@ -217,11 +213,11 @@ class BaseUser extends BaseFrameworkSystem { * database. * * @param $requestInstance A requestable class instance - * @return $matches Wether the supplied password hash matches + * @return $matches Whether the supplied password hash matches */ public function ifPasswordHashMatches (Requestable $requestInstance) { // By default nothing matches... ;) - $matches = false; + $matches = FALSE; // Is a previous result there? if (is_null($this->getResultInstance())) { @@ -245,13 +241,16 @@ class BaseUser extends BaseFrameworkSystem { $this->setResultInstance($resultInstance); } // END - if - // Rewind it + // Rewind it and advance to first entry $this->getResultInstance()->rewind(); + // This call set the result instance to a clean state + $this->getResultInstance()->next(); + // Search for it if ($this->getResultInstance()->find('pass_hash')) { // So does the hashes match? - //* DEBUG: */ echo $requestInstance->getRequestElement('pass_hash')."/".$entry['pass_hash']; + //* DEBUG: */ echo $requestInstance->getRequestElement('pass_hash') . '
' . $this->getResultInstance()->getFoundValue() . '
'; $matches = ($requestInstance->getRequestElement('pass_hash') === $this->getResultInstance()->getFoundValue()); } // END - if @@ -266,7 +265,7 @@ class BaseUser extends BaseFrameworkSystem { */ public final function getPasswordHash () { // Default is missing password hash - $passHash = null; + $passHash = NULL; // Get a database entry $entry = $this->getDatabaseEntry(); @@ -306,16 +305,9 @@ class BaseUser extends BaseFrameworkSystem { * @param $fieldName Field to update * @param $fieldValue New value to store * @return void - * @throws DatabaseUpdateSupportException If this class does not support database updates * @todo Try to make this method more generic so we can move it in BaseFrameworkSystem */ public function updateDatabaseField ($fieldName, $fieldValue) { - // Is updating database fields allowed by interface? - if (!$this instanceof Updateable) { - // Update not supported! - throw new DatabaseUpdateSupportException($this, self::EXCEPTION_DATABASE_UPDATED_NOT_ALLOWED); - } // END - if - // Get a critieria instance $searchInstance = ObjectFactory::createObjectByConfiguredName('search_criteria_class'); @@ -338,6 +330,32 @@ class BaseUser extends BaseFrameworkSystem { // Remember the update in database result $this->getResultInstance()->add2UpdateQueue($updateInstance); } + + /** + * Checks whether the user status is 'confirmed' + * + * @return $isConfirmed Whether the user status is 'confirmed' + */ + public function isConfirmed () { + // Determine it + $isConfirmed = ($this->getField(UserDatabaseWrapper::DB_COLUMN_USER_STATUS) == $this->getConfigInstance()->getConfigEntry('user_status_confirmed')); + + // Return it + return $isConfirmed; + } + + /** + * Checks whether the user status is 'guest' + * + * @return $isGuest Whether the user status is 'guest' + */ + public function isGuest () { + // Determine it + $isGuest = ($this->getField(UserDatabaseWrapper::DB_COLUMN_USER_STATUS) == $this->getConfigInstance()->getConfigEntry('user_status_guest')); + + // Return it + return $isGuest; + } } // [EOF]