26 lines
691 B
PHP
26 lines
691 B
PHP
<?php
|
|
|
|
namespace App\EventSubscriber;
|
|
|
|
use App\Entity\User;
|
|
use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTCreatedEvent;
|
|
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;
|
|
|
|
#[AsEventListener(event: 'lexik_jwt_authentication.on_jwt_created')]
|
|
class JwtCreatedSubscriber
|
|
{
|
|
public function __invoke(JWTCreatedEvent $event): void
|
|
{
|
|
$user = $event->getUser();
|
|
if (!$user instanceof User) {
|
|
return;
|
|
}
|
|
|
|
$payload = $event->getData();
|
|
$payload['user_id'] = $user->getId();
|
|
$payload['username'] = $user->getEmail();
|
|
$payload['display_name'] = $user->getUsername();
|
|
$event->setData($payload);
|
|
}
|
|
}
|