userMgr = $manager; } #[Route('/login', name: 'login',methods: ['POST'])] public function login(string $email,string $password, IRequest $request): IResponse { $error = []; try { $log=$email; // should check email with verrify email $mdp=Validation::clean_string($password); if($this->userMgr->login($log,$mdp)){ return new RedirectResponse('/home'); } else{ $error [] = "Erreur de connexion. Essayez encore"; return $this->render('./page/login.html.twig',[ 'css' => $this->preference->getCookie(), 'login_error'=> $error, ]); } // should only cath a type of Exception not all } catch (\Throwable $th) { $error [] =$th->getMessage(); return $this->render('./page/login.html.twig',[ 'css' => $this->preference->getCookie(), 'login_error'=> $error, ]); } } #[Route('/login', name: 'login2',methods: ['GET'])] public function login2(IRequest $request): IResponse { return $this->render('./page/login.html.twig',[ 'css' => $this->preference->getCookie(), ]); } #[Route('/register', name: 'register2' , methods:['GET'])] public function register2(IRequest $request): IResponse{ return $this->render('./page/register.html.twig',[ 'css' => $this->preference->getCookie(), ]); } #[Route('/register', name: 'register' , methods:['POST'])] public function register( string $nom, string $prenom, string $username, string $mail, string $motDePasse, string $sexe, float $taille, float $poids, string $dateNaissance, string $roleName, IRequest $request): IResponse { $error = []; try { $registrationData = [ 'nom' => $nom, 'prenom' => $prenom, 'username' => $username, 'email' => $mail, 'sexe' => $sexe, 'taille' => $taille, 'poids' => $poids, 'dateNaissance' => $dateNaissance, 'roleName' => $roleName ]; if ($this->userMgr->register($mail, $motDePasse, $registrationData) ) { return new RedirectResponse('/home'); } else { $error [] = 'L\'inscription a échoué. Veuillez réessayer.'; return $this->render('./page/register.html.twig',[ 'css' => $this->preference->getCookie(), 'register_error'=> $error, ]); } } catch (\Throwable $e) { $error [] =$e->getMessage(); return $this->render('./page/register.html.twig', ['css' => $this->preference->getCookie(),"register_error" => $error ]); } } //string $ancienMotDePasse,string $nouveauMotDePasse,string $confirmerMotDePasse, #[Route(path: '/forgetPassword', name: 'forget-password2', methods: ['GET'])] public function forgetPassword2(IRequest $request): IResponse { return $this->render('./page/password.html.twig',[ 'css' => $this->preference->getCookie(), ]); } #[Route(path: '/forgetPassword', name: 'forget-password', methods: ['POST'])] public function forgetPassword(string $mail, IRequest $request): IResponse { return $this->render('./page/password.html.twig',[ 'css' => $this->preference->getCookie(), ]); } #[Route(path: '/logout', name: 'logout', methods: ['POST'])] public function logout(IRequest $request): IResponse { $error = []; try { if($this->userMgr->deconnecter()){ return new RedirectResponse('/'); } else{ $error [] = "Erreur de deconnexion. Essayez encore"; return new RedirectResponse('/'); } } catch (\Throwable $th) { $error [] =$th->getMessage(); return new RedirectResponse('/'); } } }