Guest User

Untitled

a guest
Jan 15th, 2019
374
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1. $id = $request->get('id');
  2.  
  3. $user = $this->container->get('account')->getUserRepository()->find($id);
  4.  
  5. $form1 = $this->createFormBuilder()
  6. ->add('password', PasswordType::class, array(
  7. 'label' => 'Enter New Password',
  8. 'attr' => ['class'=>'form-control']))
  9. ->add('save', SubmitType::class, array(
  10. 'label' => 'Send', 'attr' => ['class' => 'btn btn-primary action-save']
  11. ))
  12. ->getForm();
  13.  
  14. $form2 = $this->createFormBuilder()
  15. ->add('password', PasswordType::class, array(
  16. 'label' => 'Generate New Password',
  17. 'disabled'=> true,
  18. 'attr' => ['class'=>'form-control']))
  19. ->add('save', SubmitType::class, array(
  20. 'label' => 'Send',
  21. 'attr' => ['class' => 'btn btn-primary action-save']
  22. ))
  23. ->getForm();
  24.  
  25. $form1->handleRequest($request);
  26. if($form1->isSubmitted() && $form1->isValid()) {
  27.  
  28. $this->addFlash(
  29. 'notice',
  30. 'You successfully changed the password!'
  31. );
  32.  
  33. $data = $form1->getData();
  34.  
  35. $new_password = $data['password'];
  36.  
  37. $encoder = $this->container->get('security.encoder_factory')->getEncoder($user);
  38. $new_pwd_encoded = $encoder->encodePassword($new_password);
  39.  
  40. $oneTimePsw = '';
  41. $user->setPassword($new_pwd_encoded);
  42. $manager = $this->getDoctrine()->getManager();
  43.  
  44. $manager->flush();
  45. }
  46.  
  47. $form2->handleRequest($request);
  48. if($form2->isSubmitted() && $form2->isValid()) {
  49.  
  50. $this->addFlash(
  51. 'notice',
  52. 'Password is successfully generated!'
  53. );
  54.  
  55. $data = $form2->getData();
  56.  
  57. $new_password = $data['password'];);
  58.  
  59. $new = $this->get('member.account')->generateRandomPassword();
  60.  
  61. $oneTimePsw = '';
  62. $user->setPassword($new);
  63. $manager = $this->getDoctrine()->getManager();
  64.  
  65. $manager->flush();
  66. }
  67. return $this->render('@AdminTemplates/admin/reset_password.html.twig', array(
  68. 'form1' => $form1->createView(),
  69. 'form2' => $form2->createView()
  70. ));
  71.  
  72. My twig
  73.  
  74. <div id="setPassword" style="display:none;">
  75. {{ form_start(form1) }}
  76.  
  77. {{ form_end(form1) }}
  78. </div>
  79.  
  80. <div id="generatePassword" style="display:none;">
  81. {{ form_start(form2) }}
  82.  
  83. {{ form_end(form2) }}
  84. </div>
Add Comment
Please, Sign In to add comment