<?php
namespace App\Subscriber;
use App\Entity\User;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
use Symfony\Component\Security\Http\SecurityEvents;
class RemoteTokenCreatorSubscriber implements EventSubscriberInterface
{
private EntityManagerInterface $entityManager;
public function __construct(EntityManagerInterface $entityManager)
{
$this->entityManager = $entityManager;
}
public function onInteractiveLogin(InteractiveLoginEvent $event)
{
/** @var User $user */
/*
$user = $event->getAuthenticationToken()->getUser();
$user->setRemoteClientToken(Uuid::uuid4());
$this->entityManager->persist($user);
$this->entityManager->flush($user);
*/
}
public static function getSubscribedEvents()
{
return [
SecurityEvents::INTERACTIVE_LOGIN => [["onInteractiveLogin"]],
];
}
}