/** * * @param string $class * @return \Symfony\Component\HttpFoundation\RedirectResponse */ public function register($class) { $this->userDiscriminator->setClass($class); $this->controller->setContainer($this->container); $result = $this->controller->registerAction($this->container->get('request')); if ($result instanceof RedirectResponse) { return $result; } $template = $this->userDiscriminator->getTemplate('registration'); if (is_null($template)) { $template = 'FOSUserBundle:Registration:register.html.twig'; } $form = $this->formFactory->createForm(); return $this->container->get('templating')->renderResponse($template, array('form' => $form->createView())); }
public function registerAction(\Symfony\Component\HttpFoundation\Request $request) { if ($this->container->get('security.authorization_checker')->isGranted('IS_AUTHENTICATED_REMEMBERED')) { return new RedirectResponse($this->container->get('router')->generate('jg_compicture_compicture_index')); } return parent::registerAction($request); }
public function registerAction(Request $request) { if ($this->container->getParameter('wallabag_user.registration_enabled')) { return parent::registerAction($request); } return $this->redirectToRoute('fos_user_security_login', [], 301); }
public function registerAction() { $userService = $this->container->get('mkd.user'); if ($userService->userLoginStatus()) { return new RedirectResponse('/'); } return parent::registerAction(); }
public function registerAction() { $discriminator = $this->container->get('nmn_user_discriminator'); $form = $discriminator->getRegistrationForm(); $this->container->set('fos_user.registration.form', $form); $return = parent::registerAction(); return $return; }
public function registerAction(Request $request) { if ($this->userAlreadyLoggedIn()) { $router = $this->container->get('router'); return new RedirectResponse($router->generate('fos_user_profile_edit'), 302); } return parent::registerAction($request); }
public function registerAction(Request $request) { $registration_enabled = $this->container->getParameter('uam_user.registration.enabled'); if ($registration_enabled) { $response = parent::registerAction($request); return $response; } else { throw new RegistrationDisabledException('Registration is currently disabled.'); } }
public function registerAction(\Symfony\Component\HttpFoundation\Request $request) { $enabled = $this->container->get('symbb.core.config.manager')->get('system.registration.enabled', "default"); if ($enabled) { return parent::registerAction($request); } else { $template = $this->getTemplateBundleName(); return $this->container->get('templating')->renderResponse($template . ':Registration:disabled.html.twig', array()); } }
public function registerAction(Request $request) { $securityContext = $this->container->get('security.context'); if ($securityContext->isGranted('ROLE_USER')) { return new RedirectResponse($this->generateUrl('personal_info'), 302); } if ($securityContext->isGranted('ROLE_ADMIN')) { return new RedirectResponse($this->generateUrl('personal_info'), 302); } $response = parent::registerAction($request); return $response; }
public function registerAction(Request $request) { $logger = $this->get('logger'); //ajax response if ($request->isXmlHttpRequest()) { $error = false; $messages = array(); $url = ''; /** @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('fos_user_registration_confirmed'); $messages[] = 'Successfully registered'; } } else { //form failed $error = true; $logger->error($form->getErrorsAsString()); foreach ($form->getErrors(true, false) as $err) { $messages[] = (string) $err; } } $response = new JsonResponse(); $data = array('error' => $error, 'messages' => $messages, 'targetUrl' => $url); $response->setData($data); if (!$error) { $dispatcher->dispatch(FOSUserEvents::REGISTRATION_COMPLETED, new FilterUserResponseEvent($user, $request, $response)); } return $response; } else { //normal response return parent::registerAction($request); } }
public function registerAction() { $discriminator = $this->container->get('nmn_user_discriminator'); $form = $discriminator->getRegistrationForm(); $this->container->set('fos_user.registration.form', $form); $return = parent::registerAction(); if ($return instanceof RedirectResponse) { $user = $this->container->get('security.context')->getToken()->getUser(); if (is_object($user) || $user instanceof UserInterface) { $dispatcher = $this->container->get('event_dispatcher'); $event = new ManualLoginEvent($user); $dispatcher->dispatch('security.manual_login', $event); } } return $return; }
public function registerAction() { $response = parent::registerAction(); // alerter par mail l'administrateur $userManager = $this->container->get('fos_user.user_manager'); $user = $userManager->findUserByUsername($this->container->get('security.context')->getToken()->getUser()); if ($user) { //Mail inscription $mailer = $this->container->get('mailer'); $message = $mailer->createMessage()->setSubject('Me New User Inscription')->setFrom('*****@*****.**')->setTo('*****@*****.**')->setBody($this->container->get('templating')->render('UserBundle:Registration:Email/registration.html.twig', array('user' => $user)), 'text/html'); $mailer->send($message); // Autologin $token = new UsernamePasswordToken($user, null, 'main', array('ROLE_USER')); $this->container->get('security.context')->setToken($token); $this->container->get('session')->set('_security_main', serialize($token)); // end Autologin } return $response; }
/** * * @see parent::registerAction($request); */ public function registerAction(Request $request) { return parent::registerAction($request); }
public function registerAction(Request $request) { if ($request->isXmlHttpRequest()) { /** @var $userManager \FOS\UserBundle\Model\UserManagerInterface */ $userManager = $this->container->get('fos_user.user_manager'); /** @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface */ $dispatcher = $this->container->get('event_dispatcher'); /** @var User $user */ $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 = $this->createForm(new AjaxRegistrationFormType(), $user, array('csrf_protection' => false)); if ('POST' === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { switch ($request->get('sale')) { case 'promo': $user->setPromo(json_encode(array("promo" => date("Y-m-d 00:00:00", strtotime("now +7 days"))))); break; case 'bonus1000': $user->setBonus(json_encode(array("1000" => date("Y-m-d 00:00:00", strtotime("now +7 days"))))); break; } $event = new FormEvent($form, $request); $dispatcher->dispatch(FOSUserEvents::REGISTRATION_SUCCESS, $event); $userManager->updateUser($user); if (null === ($response = $event->getResponse())) { $response = new JsonResponse(); $data = array('success' => true); $response->setData($data); } $dispatcher->dispatch(FOSUserEvents::REGISTRATION_COMPLETED, new FilterUserResponseEvent($user, $request, $response)); return $response; } else { $errors = array(); $errorString = (string) $form->getErrors(true, false); $errorString = trim(preg_replace('/:\\s+?ERROR:\\s/', '=', $errorString), "\n"); $errorsArray = explode("\n", $errorString); foreach ($errorsArray as $errorString) { $oneErrorArray = explode('=', $errorString); if (isset($oneErrorArray[0], $oneErrorArray[1])) { $errors[$oneErrorArray[0]] = $oneErrorArray[1]; } } return new JsonResponse(array('errors' => $errors)); } } } else { $authChecker = $this->container->get('security.authorization_checker'); $router = $this->container->get('router'); if ($authChecker->isGranted('ROLE_ADMIN') || $authChecker->isGranted('ROLE_SUPER_ADMIN')) { return new RedirectResponse($router->generate('hookah_orders_admin'), 307); } if ($authChecker->isGranted('ROLE_USER')) { return new RedirectResponse($router->generate('user_cabinet_homepage'), 307); } return parent::registerAction($request); } }
public function registerAction(Request $request) { if ($request->isXmlHttpRequest()) { $view = View::create(); $view->setFormat('json'); $response = new JsonResponse(); //Backward compatibility with Fos User 1.3 if (!class_exists('FOS\\UserBundle\\FOSUserEvents')) { $form = $this->container->get('fos_user.registration.form'); $formHandler = $this->container->get('fos_user.registration.form.handler'); $confirmationEnabled = $this->container->getParameter('fos_user.registration.confirmation.enabled'); $process = $formHandler->process($confirmationEnabled); if ($process) { $user = $form->getData(); $authUser = false; if ($confirmationEnabled) { $this->container->get('session')->set('fos_user_send_confirmation_email/email', $user->getEmail()); $route = 'fos_user_registration_check_email'; $message = $this->trans('registration.check_email', array('%email%' => $user->getEmail())); } else { $authUser = true; $route = 'fos_user_registration_confirmed'; $message = $this->trans('registration.confirmed', array('%username%' => $user->getUserName())); } $this->setFlash('fos_user_success', 'registration.flash.user_created'); $url = $this->container->get('router')->generate($route); $response = new JsonResponse(); $data = array('message' => $message, 'targetUrl' => $url, 'authUser' => $authUser); $response->setData($data); if ($authUser) { $this->authenticateUser($user, $response); } return $response; } } else { /** @var $formFactory \FOS\UserBundle\Form\Factory\FactoryInterface */ $formFactory = $this->container->get('fos_user.registration.form.factory'); /** @var $userManager \FOS\UserBundle\Model\UserManagerInterface */ $userManager = $this->container->get('fos_user.user_manager'); /** @var $dispatcher \Symfony\Component\EventDispatcher\EventDispatcherInterface */ $dispatcher = $this->container->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); if ('POST' === $request->getMethod()) { $form->bind($request); if ($form->isValid()) { $targetUrl = ''; if ($this->getSession()) { $session = $this->getSession(); if (($token = $this->container->get('security.context')->getToken()) && is_a($token, 'Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken')) { $targetUrl = $session->get('_security.' . $token->getProviderKey() . '.target_path'); } } $event = new FormEvent($form, $request); $dispatcher->dispatch(FOSUserEvents::REGISTRATION_SUCCESS, $event); $userManager->updateUser($user); if (null === ($response = $event->getResponse())) { $url = $this->container->get('router')->generate('fos_user_registration_confirmed'); $response = new JsonResponse(); $data = array('message' => $this->trans('registration.confirmed', array('%username%' => $user->getUserName())), 'targetUrl' => $targetUrl); $response->setData($data); } $dispatcher->dispatch(FOSUserEvents::REGISTRATION_COMPLETED, new FilterUserResponseEvent($user, $request, $response)); return $response; } } } $view->setData($form); return $this->handleView($view); } else { return parent::registerAction($request); } }
public function registerAction() { $response = parent::registerAction(); // do custom stuff return $response; }