/**
* A filter for detecting email changes
*
- * @author Roland Haeder <webmaster@ship-simu.org>
+ * @author Roland Haeder <webmaster@shipsimu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2011 Core Developer Team
+ * @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
* @param $requestInstance An instance of a class with an Requestable interface
* @param $responseInstance An instance of a class with an Responseable interface
* @return void
+ * @throws FilterChainException If this filter fails to operate
* @todo Implement email change of the user here. HINT: Use the User class!
*/
public function execute (Requestable $requestInstance, Responseable $responseInstance) {
// Is only first email set?
if ((!empty($email1)) && (empty($email2))) {
// Request is invalid!
- $requestInstance->requestIsValid(false);
+ $requestInstance->requestIsValid(FALSE);
// Email 2 is empty
$responseInstance->addFatalMessage('email2_empty');
// Stop processing here
- return false;
+ throw new FilterChainException($this, self::EXCEPTION_FILTER_CHAIN_INTERCEPTED);
} // END - if
// Is only second email set?
if ((empty($email1)) && (!empty($email2))) {
// Request is invalid!
- $requestInstance->requestIsValid(false);
+ $requestInstance->requestIsValid(FALSE);
// Email 1 is empty
$responseInstance->addFatalMessage('email1_empty');
// Stop processing here
- return false;
+ throw new FilterChainException($this, self::EXCEPTION_FILTER_CHAIN_INTERCEPTED);
} // END - if
// Do both match?
if ($email1 != $email2) {
// Request is invalid!
- $requestInstance->requestIsValid(false);
+ $requestInstance->requestIsValid(FALSE);
// Emails are mismatching
$responseInstance->addFatalMessage('emails_mismatch');
// Stop processing here
- return false;
+ throw new FilterChainException($this, self::EXCEPTION_FILTER_CHAIN_INTERCEPTED);
} // END - if
// Are email and confirmation empty?
if ((empty($email1)) && (empty($email2))) {
// No email change required!
- return true;
+ return TRUE;
} // END - if
// Now, get a user instance for comparison
// Are they different?
if ($userEmail == $email1) {
// Nothing has been changed is fine...
- return true;
+ return TRUE;
} // END - if
// Update the "new_email" field
- $this->partialStub("Unfinished part.");
+ $this->partialStub('Unfinished part.');
}
}