src/EventSubscriber/UserSubscriber.php line 52

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use ApiPlatform\Core\Api\IriConverterInterface;
  4. use ApiPlatform\Core\EventListener\EventPriorities;
  5. use App\Entity\Client;
  6. use App\Entity\Colis;
  7. use App\Entity\User;
  8. use App\Exception\EntiteNotFoundException;
  9. use App\Service\FileUploader;
  10. use App\Service\Utils;
  11. use Doctrine\Persistence\ManagerRegistry;
  12. use Psr\Log\LoggerInterface;
  13. use Symfony\Component\DependencyInjection\ContainerBuilder;
  14. use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
  15. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  16. use Symfony\Component\Filesystem\Filesystem;
  17. use Symfony\Component\HttpFoundation\Request;
  18. use Symfony\Component\HttpKernel\Event\ViewEvent;
  19. use Symfony\Component\HttpKernel\KernelEvents;
  20. use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
  21. use Vich\UploaderBundle\Storage\StorageInterface;
  22. class UserSubscriber implements EventSubscriberInterface
  23. {
  24.     private $managerRegistry;
  25.     private $passwordEncoder;
  26.     private $logger;
  27.     public function __construct(ManagerRegistry $managerRegistry,UserPasswordEncoderInterface $passwordEncoderLoggerInterface $logger)
  28.     {
  29.         //dd('ici');
  30.         $this->managerRegistry $managerRegistry;
  31.         $this->passwordEncoder $passwordEncoder;
  32.         $this->logger $logger;
  33.     }
  34.     public static function getSubscribedEvents()
  35.     {
  36.         return [
  37.             KernelEvents::VIEW => [
  38.                 ['processUserAdd'EventPriorities::PRE_WRITE],
  39.             ],
  40.         ];
  41.     }
  42.     public function processUserAdd(ViewEvent $event){
  43.         $user $event->getControllerResult();
  44.         $method $event->getRequest()->getMethod();
  45.         if (!$user instanceof User || Request::METHOD_POST !== $method ) {
  46.             return ;
  47.         }
  48.         $user->setPassword($this->passwordEncoder->encodePassword($user$user->getPassword()));
  49.     }
  50. }