src/EventListener/HeaderDataListener.php line 20

Open in your IDE?
  1. <?php
  2. namespace App\EventListener;
  3. use Symfony\Component\HttpKernel\Event\ControllerEvent;
  4. use Symfony\Component\HttpKernel\HttpKernelInterface;
  5. use Symfony\Component\Security\Core\Security;
  6. use Twig\Environment;
  7. class HeaderDataListener
  8. {
  9. private $twig;
  10. private $security;
  11. public function __construct(Environment $twig, Security $security)
  12. {
  13. $this->twig = $twig;
  14. $this->security = $security;
  15. }
  16. public function onKernelController(ControllerEvent $event)
  17. {
  18. if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {
  19. return;
  20. }
  21. // Get the user data
  22. $user = $this->security->getUser();
  23. // Add user data to the global Twig variable
  24. $this->twig->addGlobal('user', $user);
  25. }
  26. }