src/EventSubscriber/AjaxSubscriber.php line 26

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  4. use Symfony\Component\HttpKernel\Event\ResponseEvent;
  5. use Symfony\Component\HttpKernel\KernelInterface;
  6. class AjaxSubscriber implements EventSubscriberInterface
  7. {
  8.     public function __construct(KernelInterface $kernel)
  9.     {
  10.         $this->kernel $kernel;
  11.     }
  12.     public static function getSubscribedEvents()
  13.     {
  14.         return [
  15.             'kernel.response' => 'onKernelResponse',
  16.         ];
  17.     }
  18.     /**
  19.      * Add a HTTP header to refresh Symfony Toolbar when Ajax request in dev mode
  20.      */
  21.     public function onKernelResponse(ResponseEvent $event)
  22.     {
  23.         if($this->kernel->getEnvironment() === 'prod') {
  24.             return;
  25.         }
  26.         $request $event->getRequest();
  27.         if (!$request->isXmlHttpRequest()) {
  28.             return;
  29.         }
  30.         $response $event->getResponse();
  31.         $response->headers->set('Symfony-Debug-Toolbar-Replace'1);
  32.     }
  33. }