Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private $oldpassword;
- private $newpassword;
- /**
- * @Route("/change-password", name="change_password", defaults={"email=null"})
- * @Method("POST")
- * @param Request $request
- * @param AuthenticationUtils $authenticationUtils
- * @param UserPasswordEncoderInterface $passwordEncoder
- * @param $email
- * @return Response
- */
- public function ChangepasswordAction(Request $request, UserPasswordEncoderInterface $passwordEncoder, $email)
- {
- $user = new User();
- $form = $this->createForm(ChangepasswordType::class, $user);
- $form->handleRequest($request);
- if ($form->isSubmitted() && $form->isValid()) {
- try {
- $user = $this->getDoctrine()->getRepository(User::class)->find($email);
- } catch (ExceptionInterface $e) {
- $this->addFlash('danger', "Cet email n'existe pas.");
- }
- //Recuperer le nouveau mot de passe tapé par l'utilisateur
- $newpassword = $passwordEncoder->encodePassword($user, $user->getPassword());
- //recuperer l'ancien mot de passe dans la base de donnéees
- $oldpassword = $user->getPassword();
- if ($newpassword = $oldpassword) {
- $this->addFlash('danger', "Ce mot de passe est dejà utilisé.");
- } else {
- $user->setPassword($newpassword);
- }
- $em = $this->getDoctrine()->getManager();
- $em->persist($user);
- $em->flush();
- $this->addFlash('success', 'votre mot de passe est bien réinitialisé');
- # Redirection sur la page de connexion
- return $this->redirectToRoute('connexion');
- }
- return $this->render(
- 'security/changemotdepasse.html.twig',
- array('form' => $form->createView())
- );
- }
Add Comment
Please, Sign In to add comment