/** * @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())); }
/** * @Route("/rejestracja") */ public function registerAction(Request $request) { $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'; $registerForm = new RegisterForm(); $form = $this->createForm(RegisterFormType::class, $registerForm); $form->handleRequest($request); if ($form->isSubmitted()) { $validator = $this->get('validator'); $errors = $validator->validate($registerForm); if (count($errors) > 0) { foreach ($errors as $error) { $messageString .= $error->getMessage() . '<br />'; } } else { if ($this->getDoctrine()->getRepository('AppBundle:User')->isUserLogin($registerForm->getLogin())) { $messageString .= 'Konto o podanym loginie już istnieje.<br />'; } else { $user = new User(); $user->setProvince(NULL); $user->setCity(NULL); $user->setActive(0); $user->setName($registerForm->getName()); $user->setSurname($registerForm->getSurname()); $user->setLogin($registerForm->getLogin()); $user->setPassword(md5($registerForm->getPassword())); $user->setKey(md5(date('Y-m-d H:i:s') . $registerForm->getPassword())); $user->setEmail($registerForm->getEmail()); $user->setUrl(''); $user->setPhone(''); $user->setStreet(''); $user->setPostcode(''); $user->setDescription(''); $user->setCommentNumber(0); $user->setCommentPositive7Days(0); $user->setCommentNeutral7Days(0); $user->setCommentNegative7Days(0); $user->setCommentPositive30Days(0); $user->setCommentNeutral30Days(0); $user->setCommentNegative30Days(0); $user->setCommentPositiveAllDays(0); $user->setCommentNeutralAllDays(0); $user->setCommentNegativeAllDays(0); $user->setCommentDate($dateTime = new \DateTime('now')); $user->setIpAdded($config->getRemoteAddress()); $user->setDateAdded($dateTime); $user->setIpUpdated(''); $user->setDateUpdated(new \DateTime('1970-01-01 00:00:00')); $user->setIpLoged(''); $user->setDateLoged(new \DateTime('1970-01-01 00:00:00')); $em = $this->getDoctrine()->getManager(); $em->persist($user); $em->flush(); $messageString .= 'Konto użytkownika zostało utworzone.<br />'; $messageClass = 'ok'; if ($this->sendActivationEmail($config, $email, $registerForm, $user)) { $messageString .= 'Sprawdź pocztę w celu aktywacji konta.<br />'; } else { $messageString .= "Wysłanie e-mail'a aktywacyjnego nie powiodło się.<br />"; $messageClass = 'bad'; } unset($registerForm); unset($form); $registerForm = new RegisterForm(); $form = $this->createForm(RegisterFormType::class, $registerForm); } } } $menu = new Menu($em, 1, 0); return $this->render('register/register.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())); }