src/EventSubscriber/EasyAdminSubscriber.php line 44

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  4. use EasyCorp\Bundle\EasyAdminBundle\Event\{AfterEntityPersistedEventAfterEntityUpdatedEventAfterEntityDeletedEvent};
  5. use Symfony\Component\HttpFoundation\Session\SessionInterface;
  6. use Symfony\Contracts\Translation\TranslatorInterface;
  7. use App\Entity\Deposit;
  8. class EasyAdminSubscriber implements EventSubscriberInterface
  9. {
  10.     private $session;
  11.     private $translator;
  12.     
  13.     public function __construct(SessionInterface $sessionTranslatorInterface $translator)
  14.     {
  15.         $this->session $session;
  16.         $this->translator $translator;
  17.     }
  18.     public static function getSubscribedEvents()
  19.     {
  20.         return [
  21.             AfterEntityPersistedEvent::class => 'onAfterEntityPersistedEvent',
  22.             AfterEntityUpdatedEvent::class => 'onAfterUpdatedPersistedEvent',
  23.             AfterEntityDeletedEvent::class => 'onAfterDeletedPersistedEvent'
  24.         ];
  25.     }
  26.     
  27.     public function onAfterEntityPersistedEvent(AfterEntityPersistedEvent $event)
  28.     {
  29.         $this->session->getFlashBag()->add('success'$this->translator->trans('crud.success.new'));
  30.         
  31.         $entity $event->getEntityInstance();
  32.         if( $entity instanceof Deposit 
  33.         {
  34.             $this->session->getFlashBag()->add('info'$this->translator->trans('crud.success.deposit.info'));
  35.         }
  36.     }
  37.     
  38.     public function onAfterUpdatedPersistedEvent(AfterEntityUpdatedEvent $event)
  39.     {
  40.         $this->session->getFlashBag()->add('success'$this->translator->trans('crud.success.edit'));
  41.     }
  42.     
  43.     public function onAfterDeletedPersistedEvent(AfterEntityDeletedEvent $event)
  44.     {
  45.         $this->session->getFlashBag()->add('success'$this->translator->trans('crud.success.delete'));
  46.     }
  47. }