ControllerListener.php 654B

1234567891011121314151617181920212223242526
  1. <?php
  2. namespace Acme\DemoBundle;
  3. use Symfony\Component\EventDispatcher\Event;
  4. use Symfony\Component\HttpKernel\HttpKernelInterface;
  5. use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
  6. use Acme\DemoBundle\Twig\Extension\DemoExtension;
  7. class ControllerListener
  8. {
  9. protected $extension;
  10. public function __construct(DemoExtension $extension)
  11. {
  12. $this->extension = $extension;
  13. }
  14. public function onKernelController(FilterControllerEvent $event)
  15. {
  16. if (HttpKernelInterface::MASTER_REQUEST === $event->getRequestType()) {
  17. $this->extension->setController($event->getController());
  18. }
  19. }
  20. }