Bladeren bron

Validate login data only of there are no other errors

Alexander Makarov 12 jaren geleden
bovenliggende
commit
dca062e4e2
1 gewijzigde bestanden met toevoegingen van 7 en 5 verwijderingen
  1. 7 5
      models/LoginForm.php

+ 7 - 5
models/LoginForm.php

@@ -24,10 +24,10 @@ class LoginForm extends Model
 		return [
 			// username and password are both required
 			[['username', 'password'], 'required'],
-			// password is validated by validatePassword()
-			['password', 'validatePassword'],
 			// rememberMe must be a boolean value
 			['rememberMe', 'boolean'],
+			// password is validated by validatePassword()
+			['password', 'validatePassword'],
 		];
 	}
 
@@ -37,10 +37,12 @@ class LoginForm extends Model
 	 */
 	public function validatePassword()
 	{
-		$user = $this->getUser();
+		if (!$this->hasErrors()) {
+			$user = $this->getUser();
 
-		if (!$user || !$user->validatePassword($this->password)) {
-			$this->addError('password', 'Incorrect username or password.');
+			if (!$user || !$user->validatePassword($this->password)) {
+				$this->addError('password', 'Incorrect username or password.');
+			}
 		}
 	}