src/EventListener/KernelControllerInitListener.php line 18

Open in your IDE?
  1. <?php
  2. /**
  3.  * Copyright (c) 2011-present Qualiteam software Ltd. All rights reserved.
  4.  * See https://www.x-cart.com/license-agreement.html for license details.
  5.  */
  6. declare(strict_types=1);
  7. namespace XCart\EventListener;
  8. use Symfony\Component\HttpKernel\Event\ControllerEvent;
  9. use XCart\Controller\Admin\IAdminZone;
  10. use XCart\Controller\XCartController;
  11. final class KernelControllerInitListener
  12. {
  13.     public function onKernelController(ControllerEvent $event): void
  14.     {
  15.         $controller $event->getController();
  16.         $action '';
  17.         if (is_array($controller)) {
  18.             [$controller$action] = $controller;
  19.         }
  20.         $xc \XLite::getInstance();
  21.         $xc->run(
  22.             $controller instanceof IAdminZone
  23.             || (
  24.                 $controller instanceof XCartController
  25.                 && $action === 'admin'
  26.             )
  27.         );
  28.     }
  29. }