Ejemplo n.º 1
0
 public function loginWithToken($email, $token, $remoteIp)
 {
     $user = $this->getUserOrAssertAndRecordLoginFailure($email, $remoteIp);
     try {
         $userToken = $this->userTokenRepository->findLatestOneByUserId($user->getId());
     } catch (EntityNotFoundException $e) {
         $this->recordLogin($email, $remoteIp, UserLoginResultType::fail(), $user);
         throw UserLoginException::tokenNotFound();
     }
     if (!$userToken->verifyToken($token)) {
         $this->recordLogin($email, $remoteIp, UserLoginResultType::fail(), $user);
         throw UserLoginException::tokenNotValid();
     }
     if (!$userToken->verifyTokenDateValid()) {
         $this->recordLogin($email, $remoteIp, UserLoginResultType::fail(), $user);
         throw UserLoginException::tokenExpired();
     }
     $this->recordLogin($email, $remoteIp, UserLoginResultType::success(), $user);
     return $user;
 }
 public function testGetters()
 {
     $this->assertSame('Fail', UserLoginResultType::fail()->getName());
     $this->assertSame('Success', UserLoginResultType::success()->getName());
 }
Ejemplo n.º 3
0
 public function getUserLoginResultType()
 {
     return UserLoginResultType::success();
 }