public function onRegistrationConfirm(GetResponseUserEvent $event)
 {
     if (null === $event->getResponse()) {
         $url = $this->router->generate($this->userDiscriminator->getCurrentUserConfig()->getRoutePrefix() . '_registration_confirmed');
         $event->setResponse(new RedirectResponse($url));
     }
 }
 public function onRegistrationInitialize(GetResponseUserEvent $event)
 {
     /** @var User $user */
     $user = $event->getUser();
     $secret = sha1(uniqid(rand(), true));
     $user->setSecret($secret);
 }
 /**
  * @param Request $request
  *
  * @return null|RedirectResponse|Response
  */
 public function editAuthenticationAction(Request $request)
 {
     $user = $this->getUser();
     if (!is_object($user) || !$user instanceof UserInterface) {
         throw new AccessDeniedException('This user does not have access to this section.');
     }
     /** @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface */
     $dispatcher = $this->get('event_dispatcher');
     $event = new GetResponseUserEvent($user, $request);
     if (null !== $event->getResponse()) {
         return $event->getResponse();
     }
     /** @var $formFactory \FOS\UserBundle\Form\Factory\FactoryInterface */
     $formFactory = $this->get('fos_user.profile.form.factory');
     $form = $formFactory->createForm();
     $form->setData($user);
     $form->handleRequest($request);
     if ($form->isValid()) {
         /** @var $userManager \FOS\UserBundle\Model\UserManagerInterface */
         $userManager = $this->get('fos_user.user_manager');
         $userManager->updateUser($user);
         $this->setFlash('sonata_user_success', 'profile.flash.updated');
         $response = new RedirectResponse($this->generateUrl('sonata_user_profile_show'));
         return $response;
     }
     return $this->render('SonataUserBundle:Profile:edit_authentication.html.twig', array('form' => $form->createView(), 'breadcrumb_context' => 'user_profile'));
 }
 public function registerAction(Request $request)
 {
     /** @var $formFactory \FOS\UserBundle\Form\Factory\FactoryInterface */
     $formFactory = $this->get('fos_user.registration.form.factory');
     /** @var $userManager \FOS\UserBundle\Model\UserManagerInterface */
     $userManager = $this->get('fos_user.user_manager');
     /** @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface */
     $dispatcher = $this->get('event_dispatcher');
     $user = $userManager->createUser();
     $user->setEnabled(true);
     $event = new GetResponseUserEvent($user, $request);
     //$dispatcher->dispatch(FOSUserEvents::REGISTRATION_INITIALIZE, $event);
     if (null !== $event->getResponse()) {
         return $event->getResponse();
     }
     $form = $formFactory->createForm();
     $form->setData($user);
     $form->handleRequest($request);
     if ($form->isValid()) {
         $event = new FormEvent($form, $request);
         //$dispatcher->dispatch(FOSUserEvents::REGISTRATION_SUCCESS, $event);
         $userManager->updateUser($user);
         if (null === ($response = $event->getResponse())) {
             $url = $this->generateUrl('msi_user_admin_add_user');
             $response = new RedirectResponse($url);
         }
         $session = $request->getSession();
         $session->getFlashBag()->add('info_user_add', $this->get('translator')->trans('msi.core.admin.add.user.info', array('%username%' => $user->getUsername()), 'Admin'));
         //$dispatcher->dispatch(FOSUserEvents::REGISTRATION_COMPLETED, new FilterUserResponseEvent($user, $request, $response));
         return $response;
     }
     return $this->render('MSIUserBundle:Registration:register.html.twig', array('form' => $form->createView()));
 }
 private function failRegistration($message, GetResponseUserEvent $event)
 {
     //        throw new \Exception($message);
     /** @var Session $session */
     $session = $event->getRequest()->getSession();
     $session->getFlashBag()->set('error', $message);
     $event->setResponse(new RedirectResponse($this->urlGenerator->generate('fda_dsb_homepage')));
 }
 public function onResettingResetInitialize(GetResponseUserEvent $event)
 {
     $user = $this->userDiscriminator->getCurrentUserConfig();
     $tokenTtl = $user->getConfig('resetting.token_ttl', 86400);
     if (!$event->getUser()->isPasswordRequestNonExpired($tokenTtl)) {
         $event->setResponse(new RedirectResponse($this->router->generate($user->getRoutePrefix() . '_resetting_request')));
         // Prevent the FOSUserBundle from overwriting
         $event->stopPropagation();
     }
 }
Example #7
0
 /**
  * @param GetResponseUserEvent $event
  */
 public function onProfileEditCompleted(GetResponseUserEvent $event)
 {
     $getMailEvent = $this->ojsMailer->getEventByName(FOSUserEvents::PROFILE_EDIT_COMPLETED);
     if (!$getMailEvent) {
         return;
     }
     /** @var User $user */
     $user = $event->getUser();
     $transformParams = ['user.username' => $user->getUsername(), 'user.fullName' => $user->getFullName(), 'user.mail' => $user->getEmail()];
     $template = $this->ojsMailer->transformTemplate($getMailEvent->getTemplate(), $transformParams);
     $this->ojsMailer->sendToUser($user, $getMailEvent->getSubject(), $template);
 }
 public function onUserConfirm(\FOS\UserBundle\Event\GetResponseUserEvent $event)
 {
     $user = $event->getUser();
     $request = $event->getRequest();
     $log = new \Symforce\UserBundle\Entity\UserLog();
     $log->setUser($user);
     $log->setType(\Symforce\UserBundle\Entity\UserLog::TYPE_USER_CONFIRM);
     $log_admin = $this->container->get('sf.admin.loader')->getAdminByClass($log);
     $log_admin->initByRequest($log, $request);
     $em = $log_admin->getManager();
     $em->persist($log);
     $em->flush();
 }
 /**
  * Change user password
  */
 public function confirmResetPasswordAction(Request $request)
 {
     $token = $request->get('token');
     /** @var $formFactory \FOS\UserBundle\Form\Factory\FactoryInterface */
     $formFactory = $this->get('fos_user.resetting.form.factory');
     /** @var $userManager \FOS\UserBundle\Model\UserManagerInterface */
     $userManager = $this->get('fos_user.user_manager');
     /** @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface */
     $dispatcher = $this->get('event_dispatcher');
     $user = $userManager->findUserByConfirmationToken($token);
     if (null === $user) {
         throw new NotFoundHttpException(sprintf('The user with "confirmation token" does not exist for value "%s"', $token));
     }
     $event = new GetResponseUserEvent($user, $request);
     if (null !== $event->getResponse()) {
         return $event->getResponse();
     }
     $form = $formFactory->createForm();
     $form->setData($user);
     $form->handleRequest($request);
     $error = '';
     if ($request->getMethod() == 'POST') {
         if ($form->isValid()) {
             $event = new FormEvent($form, $request);
             $user->setConfirmationToken(null);
             $user->setPasswordRequestedAt(null);
             $userManager->updateUser($user);
             if (null === ($response = $event->getResponse())) {
                 $url = $this->generateUrl('enhavo_dashboard_index');
                 $response = new RedirectResponse($url);
                 $this->authenticateUser($user, $response);
                 return $response;
             }
         } else {
             foreach ($form->getErrors() as $errorMessage) {
                 $error = $errorMessage;
             }
         }
     }
     return $this->render('EnhavoUserBundle:Security:reset-password-confirm.html.twig', array('token' => $token, 'error' => $error, 'form' => $form->createView()));
 }
Example #10
0
 public function onResettingResetInitialize(GetResponseUserEvent $event)
 {
     if (!$event->getUser()->isPasswordRequestNonExpired($this->tokenTtl)) {
         $event->setResponse(new RedirectResponse($this->router->generate('fos_user_resetting_request')));
     }
 }
 public function onRegistrationConfirmed(GetResponseUserEvent $event)
 {
     $url = $this->router->generate('topic');
     $event->setResponse(new RedirectResponse($url));
 }
Example #12
0
 /**
  * @param GetResponseUserEvent $userResponseEvent
  */
 public function onProfileEditCompleted(GetResponseUserEvent $userResponseEvent)
 {
     $user = $userResponseEvent->getUser();
     $this->sendMail($user, 'User Event : User Profile Edit Completed', 'User Event -> User Profile Edit Completed -> ' . $user->getEmail());
 }
 public function onRegistrationInitialize(GetResponseUserEvent $event)
 {
     $user = $event->getUser();
     $request = $event->getRequest();
     $this->logger->info('Entering reg in event listner');
 }
 /**
  * @Route("/resetting/reset/{token}", name="userBundle_reset_user", requirements={"id" = "\d+"})
  * @Template()
  */
 public function resetAction(Request $request, $token)
 {
     /**
      * @var $formFactory \FOS\UserBundle\Form\Factory\FactoryInterface
      */
     $formFactory = $this->get('fos_user.resetting.form.factory');
     /**
      * @var $userManager \FOS\UserBundle\Model\UserManagerInterface
      */
     $userManager = $this->get('fos_user.user_manager');
     /**
      * @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface
      */
     $dispatcher = $this->get('event_dispatcher');
     $user = $userManager->findUserByConfirmationToken($token);
     if (null === $user) {
         throw new NotFoundHttpException(sprintf('The user with "confirmation token" does not exist for value "%s"', $token));
     }
     $event = new GetResponseUserEvent($user, $request);
     if (null !== $event->getResponse()) {
         return $event->getResponse();
     }
     $form = $this->createFormBuilder($user)->add('plainPassword', 'repeated', array('type' => 'password', 'required' => true, 'first_options' => array('label' => 'form.password'), 'second_options' => array('label' => 'form.password_confirmation'), 'invalid_message' => 'fos_user.password.mismatch', 'translation_domain' => 'FOSUserBundle'))->getForm();
     $form->handleRequest($request);
     if ($form->isValid()) {
         $event = new FormEvent($form, $request);
         $dispatcher->dispatch(FOSUserEvents::RESETTING_RESET_SUCCESS, $event);
         $userManager->updateUser($user);
         if (null === ($response = $event->getResponse())) {
             $url = $this->generateUrl('user_reset_user_confirmation');
             $response = new RedirectResponse($url);
         }
         $dispatcher->dispatch(FOSUserEvents::RESETTING_RESET_COMPLETED, new FilterUserResponseEvent($user, $request, $response));
         return $response;
     }
     return $this->render('UserBundle:Resetting:reset.html.twig', array('token' => $token, 'form' => $form->createView()));
 }
 public function onEmailConfirmed(GetResponseUserEvent $event)
 {
     $event->getUser()->setEmailConfirmedAt(new \DateTime());
     $event->getUser()->setEmailExpiration(null);
     $this->session->getFlashBag()->add('success', $this->translator->trans('registration.confirmed', array('%username%' => $event->getUser()->getFirstName()), 'FOSUserBundle'));
     $this->session->getFlashBag()->get('alert.unconfirmed.email');
     $url = $this->router->generate('fos_user_profile_edit');
     $event->setResponse(new RedirectResponse($url));
 }
 public function onConfirm(GetResponseUserEvent $event)
 {
     $event->setResponse(new JsonResponse(['message' => 'Account confirmed', 'user' => $event->getUser()]));
 }