app/Plugin/Noshiproduct/NoshiproductEvent.php line 115

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of EC-CUBE
  4.  *
  5.  * Copyright(c) EC-CUBE CO.,LTD. All Rights Reserved.
  6.  *
  7.  * http://www.ec-cube.co.jp/
  8.  *
  9.  * For the full copyright and license information, please view the LICENSE
  10.  * file that was distributed with this source code.
  11.  */
  12. namespace Plugin\Noshiproduct;
  13. use Eccube\Entity\Order;
  14. use Eccube\Event\TemplateEvent;
  15. use Eccube\Repository\Master\ProductStatusRepository;
  16. use Plugin\Noshiproduct\Repository\NoshiproductConfigRepository;
  17. use Plugin\Noshiproduct\Repository\NoshiproductRepository;
  18. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  19. class NoshiproductEvent implements EventSubscriberInterface
  20. {
  21.     /**
  22.      * @var NoshiproductConfigRepository
  23.      */
  24.     protected $noshiproductConfigRepository;
  25.     /**
  26.      * @var NoshiproductRepository
  27.      */
  28.     protected $noshiproductRepository;
  29.     /**
  30.      * Noshiproduct constructor.
  31.      *
  32.      * @param NoshiproductConfigRepository $noshiproductConfigRepository
  33.      * @param NoshiproductRepository $noshiproductRepository
  34.      */
  35.     public function __construct(
  36.         NoshiproductConfigRepository $noshiproductConfigRepository,
  37.         NoshiproductRepository $noshiproductRepository
  38.     ) {
  39.         $this->noshiproductConfigRepository $noshiproductConfigRepository;
  40.         $this->noshiproductRepository $noshiproductRepository;
  41.     }
  42.     /**
  43.      * @return array
  44.      */
  45.     public static function getSubscribedEvents()
  46.     {
  47.         return [
  48.             'Shopping/index.twig' => 'index',
  49.             'Shopping/confirm.twig' => 'confirm',
  50.             'Mypage/history.twig' => 'history',
  51.             '@admin/Order/edit.twig' => 'onAdminOrderEdit',
  52.         ];
  53.     }
  54.     /**
  55.      * @param TemplateEvent $event
  56.      */
  57.     public function index(TemplateEvent $event)
  58.     {
  59.         $event->addSnippet('Noshiproduct/Resource/template/default/shopping_index.twig');
  60.         $ConfigNoshiproduct $this->noshiproductConfigRepository->get();
  61.         /** @var Order $Order */
  62.         $Order $event->getParameter('Order');
  63.         $Noshiproducts $this->noshiproductRepository->findBy(['order_id' => $Order]);
  64.         $parameters $event->getParameters();
  65.         $parameters['Noshiproducts'] = $Noshiproducts;
  66.         $parameters['ConfigNoshiproduct'] = $ConfigNoshiproduct;
  67.         $event->setParameters($parameters);
  68.     }
  69.     public function confirm(TemplateEvent $event)
  70.     {
  71.         $event->addSnippet('Noshiproduct/Resource/template/default/shopping_confirm.twig');
  72.         $ConfigNoshiproduct $this->noshiproductConfigRepository->get();
  73.         /** @var Order $Order */
  74.         $Order $event->getParameter('Order');
  75.         $Noshiproducts $this->noshiproductRepository->findBy(['order_id' => $Order]);
  76.         $parameters $event->getParameters();
  77.         $parameters['Noshiproducts'] = $Noshiproducts;
  78.         $parameters['ConfigNoshiproduct'] = $ConfigNoshiproduct;
  79.         $event->setParameters($parameters);
  80.     }
  81.     public function history(TemplateEvent $event)
  82.     {
  83.         $event->addSnippet('Noshiproduct/Resource/template/default/mypage_history.twig');
  84.         $ConfigNoshiproduct $this->noshiproductConfigRepository->get();
  85.         /** @var Order $Order */
  86.         $Order $event->getParameter('Order');
  87.         $Noshiproducts $this->noshiproductRepository->findBy(['order_id' => $Order]);
  88.         $parameters $event->getParameters();
  89.         $parameters['Noshiproducts'] = $Noshiproducts;
  90.         $parameters['ConfigNoshiproduct'] = $ConfigNoshiproduct;
  91.         $event->setParameters($parameters);
  92.     }
  93.     public function onAdminOrderEdit(TemplateEvent $event)
  94.     {
  95.         $event->addSnippet('Noshiproduct/Resource/template/admin/admin_order_edit.twig');
  96.         $ConfigNoshiproduct $this->noshiproductConfigRepository->get();
  97.         /** @var Order $Order */
  98.         $Order $event->getParameter('Order');
  99.         $Noshiproducts $this->noshiproductRepository->findBy(['order_id' => $Order]);
  100.         $parameters $event->getParameters();
  101.         $parameters['Noshiproducts'] = $Noshiproducts;
  102.         $parameters['ConfigNoshiproduct'] = $ConfigNoshiproduct;
  103.         $event->setParameters($parameters);
  104.     }
  105. }