src/EventSubscriber/UserAccountSubscriber.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use App\Entity\Doctor;
  4. use App\Entity\DoctorInterface;
  5. use Boab\CmsBundle\Event\AccountTerminatedEvent;
  6. use Doctrine\ORM\EntityManagerInterface;
  7. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  8. class UserAccountSubscriber implements EventSubscriberInterface
  9. {
  10.     public function __construct(private EntityManagerInterface $entityManager)
  11.     {
  12.         
  13.     }
  14.     public function onUserAccountTerminated(AccountTerminatedEvent $event): void
  15.     {
  16.         $user $event->getUser();
  17.         if($user instanceof DoctorInterface){
  18.             foreach ($user->getTimeSlots() as $timeSlot) {
  19.                 //$this->entityManager->remove($timeSlot);
  20.             }
  21.             
  22.              dump($user->getTimeSlots());
  23.         
  24.             $this->entityManager->remove($user);            
  25.         }
  26.     }
  27.     public static function getSubscribedEvents(): array
  28.     {
  29.         return [
  30.             'user.account_terminated' => 'onUserAccountTerminated',
  31.         ];
  32.     }
  33. }