Example #1
0
 /**
  * @Route("/logowanie,{user},{code}")
  */
 public function emailAction(Request $request, $user, $code)
 {
     $config = new Config();
     $session = $request->getSession();
     $cookieLogin = new CookieLogin($em = $this->getDoctrine()->getManager());
     $cookieLogin->setCookieLogin($session);
     $quickForm = new QuickForm($this, $request);
     $email = new Email($this);
     $messageString = '';
     $messageClass = 'bad';
     $loginForm = new LoginForm();
     $form = $this->createForm(LoginFormType::class, $loginForm);
     $userLogin = $this->getDoctrine()->getRepository('AppBundle:User')->isUserLogin($user);
     if ($userLogin && $code == $userLogin->getKey()) {
         if (!$userLogin->getActive()) {
             $messageString .= 'Konto użytkownika nie jest aktywne.<br />';
         } else {
             $userPassword = $this->getDoctrine()->getRepository('AppBundle:User')->setUserPassword($userLogin->getId(), $password = $this->getDoctrine()->getRepository('AppBundle:User')->generatePassword(), $config->getRemoteAddress(), $config->getDateTimeNow());
             if ($userPassword) {
                 $messageString .= 'Hasło konta użytkownika zostało zmienione.<br />';
                 $messageClass = 'ok';
                 if ($this->sendNewPasswordEmail($config, $email, $userLogin, $password)) {
                     $messageString .= 'Sprawdź pocztę w celu zapoznania z hasłem.<br />';
                 } else {
                     $messageString .= "Wysłanie e-mail'a z hasłem nie powiodło się.<br />";
                     $messageClass = 'bad';
                 }
                 unset($loginForm);
                 unset($form);
                 $loginForm = new LoginForm();
                 $form = $this->createForm(LoginFormType::class, $loginForm);
             } else {
                 $messageString .= 'Zmiana hasła konta użytkownika nie powiodła się.<br />';
             }
         }
     } else {
         $messageString .= 'Podany kod zmiany hasła jest niepoprawny.<br />';
     }
     $menu = new Menu($em, 1, 0);
     return $this->render('login/login.html.twig', array('session' => $session->get('user'), 'quickForm' => $quickForm->createView(), 'form' => $form->createView(), 'messageString' => $messageString, 'messageClass' => $messageClass, 'activeCategory' => 1, 'activeProvince' => 0, 'activeCity' => 0, 'categories' => $menu->getCategories(), 'places' => $menu->getPlaces(), 'isProvince' => $menu->isProvince()));
 }