mirror of
https://github.com/delight-im/PHP-Auth.git
synced 2025-08-02 14:17:26 +02:00
Refactor validation of email addresses
This commit is contained in:
37
src/Auth.php
37
src/Auth.php
@@ -144,13 +144,7 @@ class Auth {
|
|||||||
public function register($email, $password, $username = null, callable $emailConfirmationCallback = null) {
|
public function register($email, $password, $username = null, callable $emailConfirmationCallback = null) {
|
||||||
$this->throttle(self::THROTTLE_ACTION_REGISTER);
|
$this->throttle(self::THROTTLE_ACTION_REGISTER);
|
||||||
|
|
||||||
$email = isset($email) ? trim($email) : null;
|
$email = self::validateEmailAddress($email);
|
||||||
if (empty($email)) {
|
|
||||||
throw new InvalidEmailException();
|
|
||||||
}
|
|
||||||
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
|
||||||
throw new InvalidEmailException();
|
|
||||||
}
|
|
||||||
|
|
||||||
$password = isset($password) ? trim($password) : null;
|
$password = isset($password) ? trim($password) : null;
|
||||||
if (empty($password)) {
|
if (empty($password)) {
|
||||||
@@ -256,13 +250,7 @@ class Auth {
|
|||||||
* @throws AuthError if an internal problem occurred (do *not* catch)
|
* @throws AuthError if an internal problem occurred (do *not* catch)
|
||||||
*/
|
*/
|
||||||
public function login($email, $password, $remember = false) {
|
public function login($email, $password, $remember = false) {
|
||||||
$email = isset($email) ? trim($email) : null;
|
$email = self::validateEmailAddress($email);
|
||||||
if (empty($email)) {
|
|
||||||
throw new InvalidEmailException();
|
|
||||||
}
|
|
||||||
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
|
||||||
throw new InvalidEmailException();
|
|
||||||
}
|
|
||||||
|
|
||||||
$password = isset($password) ? trim($password) : null;
|
$password = isset($password) ? trim($password) : null;
|
||||||
if (empty($password)) {
|
if (empty($password)) {
|
||||||
@@ -313,6 +301,27 @@ class Auth {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validates an email address
|
||||||
|
*
|
||||||
|
* @param string $email the email address to validate
|
||||||
|
* @return string the email address if it's valid
|
||||||
|
* @throws InvalidEmailException if the email address was invalid
|
||||||
|
*/
|
||||||
|
private static function validateEmailAddress($email) {
|
||||||
|
if (empty($email)) {
|
||||||
|
throw new InvalidEmailException();
|
||||||
|
}
|
||||||
|
|
||||||
|
$email = trim($email);
|
||||||
|
|
||||||
|
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
||||||
|
throw new InvalidEmailException();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $email;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new directive keeping the user logged in ("remember me")
|
* Creates a new directive keeping the user logged in ("remember me")
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user