public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $userId = $token->getUser()->id;
     $forbidden = AuthenticationHelper::checkLoginForbidden($request);
     if ($forbidden['status'] == 'error') {
         $exception = new AuthenticationException($forbidden['message']);
         throw $exception;
     } else {
         $this->getUserService()->markLoginSuccess($userId, $request->getClientIp());
     }
     $sessionId = $request->getSession()->getId();
     //$sessionId = $this->createToken($request);
     $this->getUserService()->rememberLoginSessionId($userId, $sessionId);
     if ($request->isXmlHttpRequest()) {
         $content = array('success' => true);
         return new JsonResponse($content, 200);
     }
     if ($this->getAuthService()->hasPartnerAuth()) {
         $url = $this->httpUtils->generateUri($request, 'partner_login');
         $queries = array('goto' => $this->determineTargetUrl($request));
         $url = $url . '?' . http_build_query($queries);
         return $this->httpUtils->createRedirectResponse($request, $url);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         //todo:
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         return new Response(json_encode(array('has_error' => false, 'username' => $token->getUser()->getUsername(), 'target_path' => $this->determineTargetUrl($request))));
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritdoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         return new JsonResponse(['success' => true, 'username' => $token->getUsername()]);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $session = $request->getSession();
     $user = $token->getUser();
     $session->registerAccount($user, $request, $this);
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * This is called when an interactive authentication attempt succeeds. This
  * is called by authentication listeners inheriting from AbstractAuthenticationListener.
  * @param Request        $request
  * @param TokenInterface $token
  * @return Response The response to return
  */
 function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $user = $token->getUser();
     // This should actually be handle by the AuthenticationFailedHandler
     if (!$user->isAdmin()) {
         // can't go into admin
         $request->getSession()->set(SecurityContextInterface::AUTHENTICATION_ERROR, new AuthenticationException('User is not an admin.'));
         return $this->httpUtils->createRedirectResponse($request, 'admin_login');
     }
     \LoginAttempts::DeleteOldLoginAttempts();
     \LoginAttempts::ClearLoginAttemptsForIp();
     $zendAuth = \Zend_Auth::getInstance();
     $this->authAdapter->setUsername($user->getUsername())->setPassword($request->request->get('_password'))->setAdmin(true);
     $result = $zendAuth->authenticate($this->authAdapter);
     $OAuthtoken = $this->userService->loginUser($user, 'oauth_authorize');
     $session = $request->getSession();
     $session->set('_security_oauth_authorize', serialize($OAuthtoken));
     \Article::UnlockByUser($user->getId());
     $request->setLocale($request->request->get('login_language'));
     setcookie('NO_CACHE', '1', NULL, '/', '.' . $this->extractDomain($_SERVER['HTTP_HOST']));
     $user->setLastLogin(new \DateTime());
     $this->em->flush();
     if ($request->get('ajax') === 'true') {
         // close popup with login.
         return new Response("<script type=\"text/javascript\">window.parent.g_security_token = '" . \SecurityToken::GetToken() . "';window.parent.\$(window.parent.document.body).data('loginDialog').dialog('close');window.parent.setSecurityToken(window.parent.g_security_token);</script>");
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $user = $this->security->getToken()->getUser();
     $user->setWebSocketAuthKey(uniqid());
     $this->em->persist($user);
     $this->em->flush();
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritdoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if (null !== ($user = $token->getUser())) {
         $user->setLastLogin(new \DateTime('now'));
         Kernel::getInstance()->getService('em')->flush();
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         $json = array('ok' => true, 'username' => $token->getUsername());
         return new \Symfony\Component\HttpFoundation\JsonResponse($json);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * @param Request $request
  * @param TokenInterface $token
  *
  * @return Response
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         $content = array('success' => true);
         return new JsonResponse($content, 200);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest() || $request->getRequestFormat() !== 'html') {
         $json = array('username' => $token->getUsername(), 'redirectUrl' => $this->determineTargetUrl($request));
         return new Response(json_encode($json));
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         $response = new JsonResponse(array('code' => 200, 'username' => $token->getUsername()));
     } else {
         $response = parent::onAuthenticationSuccess($request, $token);
     }
     return $response;
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $meta = $this->databaseService->getMeta($token);
     $startCategory = $meta->get('startCategory');
     if (!empty($startCategory)) {
         return new RedirectResponse($this->router->generate('category', array('categorySlug' => $this->categoryService->generateUrlSlug($startCategory))));
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
Пример #14
0
 /**
  * Checks if the user has actually filled in some mandatory data. If not, it redirects to the users'
  * profile page.
  *
  * {@inheritdoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($user = $token->getUser()) {
         if (!$user->getFirstName() || !$user->getLastName()) {
             return new RedirectResponse($this->router->generate('opifer_cms_user_profile'));
         }
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritDoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $session = $request->getSession();
     $user = $token->getUser();
     $session->set('admin_id', $user->getId());
     if (null != ($uiLocale = $this->prefService->getPrefForName($user->getId(), 'uiLocale'))) {
         $session->set('_locale', $uiLocale);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * This is called when an interactive authentication attempt succeeds. This
  * is called by authentication listeners inheriting from AbstractAuthenticationListener.
  * @param Request        $request
  * @param TokenInterface $token
  *
  * @return Response
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $user = $token->getUser();
     $zendAuth = \Zend_Auth::getInstance();
     $this->authAdapter->setEmail($user->getEmail())->setPassword($request->request->get('password'));
     $zendAuth->authenticate($this->authAdapter);
     $OAuthtoken = $this->userService->loginUser($user, 'oauth_authorize');
     $session = $request->getSession();
     $session->set('_security_oauth_authorize', serialize($OAuthtoken));
     return parent::onAuthenticationSuccess($request, $token);
 }
 /**
  * {@inheritdoc}
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if (null !== ($user = $token->getUser())) {
         $user->setLastLogin(new \DateTime('now'));
         $this->em->flush();
     }
     $response = parent::onAuthenticationSuccess($request, $token);
     if (null !== $this->rememberMeServices) {
         $this->rememberMeServices->loginSuccess($request, $response, $token);
     }
     return $response;
 }
 /**
  * {@inheritdoc}
  *
  * Overrides event to add API token to the user's session.
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     /*
      * @var UserInterface Note this will return a ApiBundle\Entity\User instance; this dependence to ApiBundle
      *                    is due to the fact that this is the user class defined at the application
      *                    configuration level worry here.
      */
     $user = $token->getUser();
     $apiToken = $this->jwtManager->create($user);
     $request->getSession()->set('api_token', $apiToken);
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $lastUserPassword = $this->em->getRepository("ACSEOChangePasswordBundle:PasswordHistory")->findOneBy(array("user" => $token->getUser()), array("createdAt" => "DESC"), 1);
     $lastPasswordDate = $lastUserPassword->getCreatedAt();
     if ($lastPasswordDate->add(new \DateInterval($this->passwordExpireAfter)) > new \Datetime()) {
         $session = $request->getSession();
         $session->set("mustchangepassword", true);
         if ($this->enableFlashbagMessage) {
             $session->getFlashBag()->add("danger", "Votre mot de passe a expiré, vous devez en saisir un nouveau");
         }
         $response = new RedirectResponse($this->router->generate($this->changePasswordRoute));
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     if ($request->isXmlHttpRequest()) {
         $url = $this->determineTargetUrl($request);
         if (!preg_match('/http/', $url)) {
             $url = $request->getBaseUrl() . $url;
         }
         $data = array('url' => $url);
         $response = new \Symfony\Component\HttpFoundation\JsonResponse($data);
         return $response;
     } else {
         return parent::onAuthenticationSuccess($request, $token);
     }
 }
Пример #21
0
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     try {
         $password = $request->get('password');
         $user = $token->getUser();
         AuthSuccessHandler::encryptDataKeyAndPutIntoSession($request, $user, $password, $this->saltKey);
     } catch (Exception $e) {
         $request->getSession()->invalidate();
         throw new AccessDeniedException("Unexpected exception occurred.");
     }
     if ($request->isXmlHttpRequest()) {
         $redirectUrl = $request->getSession()->get('_security.main.target_path');
         return new Response('{' . '"user": {' . '"id":"' . $user->getId() . '",' . '"role":"' . $user->getRole() . '",' . '"username":"******",' . '"isReal":"' . ($user->isReal() ? '1' : '0') . '"' . '},' . '"url":"' . $redirectUrl . '"' . '}');
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $em = $this->container->get('doctrine')->getManager();
     $failureRepo = $em->getRepository('AppFrontBundle:Loginfailure');
     $failureRepo->removeFailures($token->getUser(), $request->server->get('REMOTE_ADDR'));
     if ($request->isXmlHttpRequest()) {
         $response = new JsonResponse(array('success' => true, 'username' => $token->getUsername()));
     } else {
         $referer = $request->getSession()->get('_security.' . $token->getProviderKey() . '.target_path');
         if ($referer) {
             $response = new RedirectResponse($referer);
         } else {
             $response = parent::onAuthenticationSuccess($request, $token);
         }
     }
     return $response;
 }
 /**
  * Connect the user to Vanilla and continue to the default behavior
  *
  * @param Request        $request
  * @param TokenInterface $token
  *
  * @return Response never null
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $userManager = $this->vanillaKernel->getUserManager();
     $sessionManager = $this->vanillaKernel->getSessionManager();
     $vanillaUser = $userManager->findByUsername($token->getUsername());
     if ($vanillaUser) {
         $vanillaUserId = $vanillaUser;
     } else {
         $builtModel = $this->userTransformer->createVanillaUser($token->getUser());
         if (!$builtModel instanceof VanillaUser) {
             throw new \RuntimeException(sprintf('%s::createVanillaUser() must return a VanillaUser instance (%s given)', get_class($this->userTransformer), is_object($builtModel) ? get_class($builtModel) : gettype($builtModel)));
         }
         $vanillaUserId = $userManager->register($builtModel);
     }
     $sessionManager->login($vanillaUserId);
     $userManager->trackVisit($token->getUser());
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     // $this->getUserService()->markLoginInfo();
     if ($request->isXmlHttpRequest()) {
         $content = array('success' => true);
         return new JsonResponse($content, 200);
     }
     $userId = $token->getUser()->id;
     $sessionId = $request->getSession()->getId();
     $this->getUserService()->rememberLoginSessionId($userId, $sessionId);
     if ($this->getAuthService()->hasPartnerAuth()) {
         $url = $this->httpUtils->generateUri($request, 'partner_login');
         $queries = array('goto' => $this->determineTargetUrl($request));
         $url = $url . '?' . http_build_query($queries);
         return $this->httpUtils->createRedirectResponse($request, $url);
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $timezone = $request->get('timezone');
     $token->getUser()->setTimezone($timezone);
     $session = $request->getSession();
     $session->set('timezone', $timezone);
     //date_default_timezone_set($timezone);
     if ($request->isXmlHttpRequest()) {
         $url = $this->determineTargetUrl($request);
         if (!preg_match('/http/', $url)) {
             $url = $request->getBaseUrl() . $url;
         }
         $data = array('url' => $url, 'success' => true);
         $response = new \Symfony\Component\HttpFoundation\JsonResponse($data);
         return $response;
     } else {
         return parent::onAuthenticationSuccess($request, $token);
     }
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $session = $request->getSession();
     $responseType = $session->get('responseType');
     $redirectUrl = $session->get('redirectUrl');
     // Если пришел response_type, то генерируем access token.
     if ($responseType !== null && $responseType == 'token') {
         $accessToken = new AccessToken();
         $accessToken->setToken($this->tokenGenerator->generate());
         $accessToken->setExpiresAt(new \DateTime('now + 1 day'));
         $accessToken->setUser($token->getUser());
         $this->entityManager->persist($accessToken);
         $this->entityManager->flush();
         $session->remove('responseType');
         $session->remove('redirectUrl');
         $response = new RedirectResponse("{$redirectUrl}?access_token={$accessToken->getToken()}");
     } else {
         $response = parent::onAuthenticationSuccess($request, $token);
     }
     return $response;
 }
 /**
  * This is called when an interactive authentication attempt succeeds. This
  * is called by authentication listeners inheriting from AbstractAuthenticationListener.
  * @param Request $request
  * @param TokenInterface $token
  * @return Response The response to return
  */
 function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $form = $request->get('login_form_type');
     if (isset($form['username'])) {
         $vars = array('ip' => $request->getClientIp(), 'username' => $form['username']);
         $accessSession = $this->em->getRepository('LoginCidadaoCoreBundle:AccessSession')->findOneBy($vars);
         if (!$accessSession) {
             $accessSession = new AccessSession();
             $accessSession->fromArray($vars);
         }
         $accessSession->setVal(0);
         $this->em->persist($accessSession);
         $this->em->flush();
     }
     // CPF check
     if ($token->getUser()->isCpfExpired()) {
         return $this->httpUtils->createRedirectResponse($request, 'lc_registration_cpf');
     }
     if (strstr($token->getUser()->getUsername(), '@') !== false) {
         return $this->httpUtils->createRedirectResponse($request, 'lc_update_username');
     }
     return parent::onAuthenticationSuccess($request, $token);
 }
Пример #28
0
 /**
  * @param Request        $request
  * @param TokenInterface $token
  *
  * @return Response
  */
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     //if ($request->isXmlHttpRequest()) {
     // in case of successful authentication, user must be in the context
     $user = $this->securityContext->getToken()->getUser();
     $id = $user->getId();
     $name = $user->getName();
     $email = $user->getEmail();
     $avatarimg = $user->getImg();
     $shortBio = $user->getInterviewCaption();
     $profession = $user->getJob();
     $self_link = $user->getHomepage();
     $interest = $user->getInterest();
     $last_publish_date = $user->getName();
     $dreamProfession = $user->getDream();
     $post = $this->em->getRepository('Yasoon\\Site\\Entity\\PostEntity')->createQueryBuilder('p')->leftJoin('p.author', 'a')->where('a.id = ' . $id)->setMaxResults(1)->setFirstResult(0)->orderBy('p.date', 'desc')->getQuery()->getResult();
     if ($post) {
         $post_date = $post[0]->getDate()->format('d/m/Y');
     } else {
         $post_date = null;
     }
     //$user->getPosts()->findAll();
     $userdata = ['id' => $id, 'name' => $name, 'email' => $email, 'avatarimg' => $avatarimg, 'shortBio' => $shortBio, 'profession' => $profession, 'self_link' => $self_link, 'interest' => $interest, 'last_publish_date' => $post_date, 'dreamProfession' => $dreamProfession];
     $session = new Session();
     if (!empty($session->get('reviewStatus'))) {
         $reviewId = $session->get('reviewStatus');
         $review = $this->em->getRepository('Yasoon\\Site\\Entity\\ReviewEntity')->find($reviewId);
         $review->setStatus('saved')->setAuthorId($id);
         $this->em->merge($review);
         $this->em->flush();
         $session->remove('reviewStatus');
         return new JsonResponse(['error' => 'false', 'userData' => $userdata, 'reviewId' => $reviewId], 200);
     }
     return new JsonResponse(['error' => 'false', 'userData' => $userdata], 200);
     //}
     return parent::onAuthenticationSuccess($request, $token);
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $this->app['security.token_storage']->setToken($token);
     $session = $request->getSession();
     $stmt = $this->app['db']->executeQuery('SELECT * FROM users WHERE email = ? AND deleted = 0', array(strtolower($token->getUser())));
     $user = $stmt->fetch();
     if ($user) {
         $session->set('userId', $user['id']);
         $session->set('name', $user['name']);
         $session->set('surname', $user['surname']);
     }
     if (null !== $this->app['dispatcher']) {
         $loginEvent = new InteractiveLoginEvent($request, $token);
         $this->app['dispatcher']->dispatch(SecurityEvents::INTERACTIVE_LOGIN, $loginEvent);
     }
     $response = parent::onAuthenticationSuccess($request, $token);
     if (!$response instanceof Response) {
         throw new \RuntimeException('Authentication Success Handler did not return a Response.');
     }
     if (null !== $this->rememberMeServices) {
         $this->rememberMeServices->loginSuccess($request, $response, $token);
     }
     return $response;
 }
 public function onAuthenticationSuccess(Request $request, TokenInterface $token)
 {
     $this->app['monolog']->addInfo(sprintf("User '%s' logged in.", $this->app['user']->getEmail()));
     $this->app['session']->getFlashBag()->add('success', sprintf($this->app['translator']->trans('Hello, %s.'), $token->getUser()->getName()));
     return parent::onAuthenticationSuccess($request, $token);
 }