/** * Updates the user last action * * @param PostResponseEvent $event */ public function onRequestTermination(PostResponseEvent $event) { $this->userFetcher->setThrowOnTokenError(false); if (null === ($user = $this->userFetcher->resolve())) { return; } $requestTime = $event->getRequest()->server->get('REQUEST_TIME'); $dateTime = new \DateTime(); $dateTime->setTimestamp($requestTime); $user->updateLastAction($dateTime); $this->userRepository->modify($user); }
/** * Constructor * * @param UserFetcherInterface $userFetcher * @param UserRepositoryInterface $userRepository */ public function __construct(UserFetcherInterface $userFetcher, UserRepositoryInterface $userRepository) { $this->userFetcher = $userFetcher; $this->userRepository = $userRepository; $this->userFetcher->setThrowOnTokenError(false); }