app/Plugin/EccubePaymentLite4/EventListener/EventSubscriber/Front/Mypage/Withdraw/AddAttentionTextAndRemoveBtn.php line 38

Open in your IDE?
  1. <?php
  2. namespace Plugin\EccubePaymentLite4\EventListener\EventSubscriber\Front\Mypage\Withdraw;
  3. use Eccube\Event\TemplateEvent;
  4. use Plugin\EccubePaymentLite4\Entity\RegularOrder;
  5. use Plugin\EccubePaymentLite4\Entity\RegularStatus;
  6. use Plugin\EccubePaymentLite4\Repository\RegularOrderRepository;
  7. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  8. use Symfony\Component\HttpFoundation\Session\SessionInterface;
  9. class AddAttentionTextAndRemoveBtn implements EventSubscriberInterface
  10. {
  11.     /**
  12.      * @var RegularOrderRepository
  13.      */
  14.     private $regularOrderRepository;
  15.     /**
  16.      * @var SessionInterface
  17.      */
  18.     private $session;
  19.     public function __construct(
  20.         RegularOrderRepository $regularOrderRepository,
  21.         SessionInterface $session
  22.     ) {
  23.         $this->regularOrderRepository $regularOrderRepository;
  24.         $this->session $session;
  25.     }
  26.     public static function getSubscribedEvents()
  27.     {
  28.         return [
  29.             'Mypage/withdraw.twig' => 'index',
  30.         ];
  31.     }
  32.     public function index(TemplateEvent $templateEvent)
  33.     {
  34.         $Customer unserialize($this->session->get('_security_customer'))->getUser();
  35.         /** @var RegularOrder[] $RegularOrders */
  36.         $RegularOrders $this->regularOrderRepository->findBy([
  37.             'Customer' => $Customer,
  38.         ]);
  39.         foreach ($RegularOrders as $RegularOrder) {
  40.             if ($RegularOrder->getRegularStatus()->getId() === RegularStatus::CANCELLATION) {
  41.                 continue;
  42.             }
  43.             $templateEvent->addSnippet('@EccubePaymentLite4/default/Mypage/Withdraw/attention_text_and_remove_btn.twig');
  44.             return;
  45.         }
  46.     }
  47. }