Exemplo n.º 1
0
 /**
  * @param Request $request
  * @param RequestConfiguration $configuration
  * @param UserInterface $user
  * @param string $newPassword
  *
  * @return RedirectResponse
  */
 protected function handleResetPassword(Request $request, RequestConfiguration $configuration, UserInterface $user, $newPassword)
 {
     $user->setPlainPassword($newPassword);
     $user->setPasswordResetToken(null);
     $user->setPasswordRequestedAt(null);
     $dispatcher = $this->container->get('event_dispatcher');
     $dispatcher->dispatch(UserEvents::PRE_PASSWORD_RESET, new GenericEvent($user));
     $this->manager->flush();
     $this->addFlash('success', 'sylius.user.password.reset.success');
     $dispatcher->dispatch(UserEvents::POST_PASSWORD_RESET, new GenericEvent($user));
     if (!$configuration->isHtmlRequest()) {
         return $this->viewHandler->handle($configuration, View::create(null, Response::HTTP_NO_CONTENT));
     }
     $redirectRouteName = $request->attributes->get('_sylius[redirect]', 'sylius_user_security_login', true);
     return new RedirectResponse($this->container->get('router')->generate($redirectRouteName));
 }