private function authenticateWithPassword($login, $passwordHash)
{
$user = $this->userModel->getUser($login);
if (empty($user['login'])) {
return new AuthResult(AuthResult::FAILURE, $login, null);
}
if ($this->passwordHelper->verify($passwordHash, $user['password'])) {
if ($this->passwordHelper->needsRehash($user['password'])) {
$newPasswordHash = $this->passwordHelper->hash($passwordHash);
$this->userModel->updateUser($login, $newPasswordHash, $user['email'], $user['alias'], $user['token_auth']);
}
return $this->authenticationSuccess($user);
}
return new AuthResult(AuthResult::FAILURE, $login, null);
}