src/Service/PasswordResetSubscriber.php line 27

Open in your IDE?
  1. <?php
  2. namespace App\Service;
  3. use App\Entity\BaseUser;
  4. use FOS\UserBundle\FOSUserEvents;
  5. use FOS\UserBundle\Event\FormEvent;
  6. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  7. use Doctrine\ORM\EntityManagerInterface;
  8. class PasswordResetSubscriber implements EventSubscriberInterface
  9. {
  10.     private $em;
  11.     public function __construct(EntityManagerInterface $em)
  12.     {
  13.         $this->em $em;
  14.     }
  15.     public static function getSubscribedEvents(): array
  16.     {
  17.         return [
  18.             FOSUserEvents::RESETTING_RESET_SUCCESS => 'onPasswordResetSuccess',
  19.         ];
  20.     }
  21.     public function onPasswordResetSuccess(FormEvent $event)
  22.     {
  23.         $user $event->getForm()->getData();
  24.         $user->setPasswordUpdatedAt(new \DateTime());
  25.         $this->em->persist($user);
  26.         $this->em->flush();
  27.     }
  28. }