<?php
namespace App\Events;
use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTCreatedEvent;
use App\Entity\User;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class JwtCreatedSubscriber implements EventSubscriberInterface
{
public static function getSubscribedEvents()
{
return [
JWTCreatedEvent::class => 'updateJwtData',
];
}
public function updateJwtData(JWTCreatedEvent $event)
{
$user = $event->getUser();
$data = $event->getData();
// Vérifier si l'utilisateur est bien une instance de User
if (!$user instanceof User) {
return;
}
$data['id'] = $user->getId();
$data['email'] = $user->getEmail();
$event->setData($data);
}
}