<?php
declare(strict_types=1);
namespace App\EventListener;
use App\Entity\Admin;
use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTCreatedEvent;
class JWTCreatedListener
{
/**
* @param JWTCreatedEvent $event
* @return void
*/
public function onJWTCreated(JWTCreatedEvent $event)
{
$user = $event->getUser();
$payload = $event->getData();
if ($user instanceof Admin) {
$payload['company'] = $user->getCompany() ? [
'id' => $user->getCompany()->getId(),
] : null;
}
$event->setData($payload);
}
}