app/Plugin/AmazonPayV2/AmazonPayEvent.php line 8

Open in your IDE?
  1. <?php
  2. /*   __________________________________________________
  3.     |  Obfuscated by YAK Pro - Php Obfuscator  2.0.3   |
  4.     |              on 2021-09-17 16:10:28              |
  5.     |    GitHub: https://github.com/pk-fr/yakpro-po    |
  6.     |__________________________________________________|
  7. */
  8. namespace Plugin\AmazonPayV2;use Eccube\Event\TemplateEvent;use Eccube\Event\EventArgs;use Eccube\Event\EccubeEvents;use Eccube\Common\EccubeConfig;use Eccube\Repository\PaymentRepository;use Eccube\Repository\PluginRepository;use Eccube\Service\OrderHelper;use Eccube\Service\CartService;use Plugin\AmazonPayV2\Repository\ConfigRepository;use Plugin\AmazonPayV2\Service\AmazonRequestService;use Plugin\AmazonPayV2\Service\Method\AmazonPay;use Plugin\AmazonPayV2\phpseclib\Crypt\Random;use Symfony\Component\DependencyInjection\ContainerInterface;use Symfony\Component\EventDispatcher\EventSubscriberInterface;use Symfony\Component\HttpFoundation\RequestStack;use Symfony\Component\HttpFoundation\Session\SessionInterface;use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;use Symfony\Component\Routing\Generator\UrlGeneratorInterface;use Eccube\Repository\DeliveryRepository;use Eccube\Repository\PaymentOptionRepository;class AmazonPayEvent implements EventSubscriberInterface{private $sessionAmazonProfileKey 'amazon_pay_v2.profile';private $sessionAmazonCheckoutSessionIdKey 'amazon_pay_v2.checkout_session_id';private $sessionAmazonLoginStateKey 'amazon_pay_v2.amazon_login_state';protected $eccubeConfig;private $router;protected $configRepository;protected $amazonRequestService;protected $deliveryRepository;protected $paymentOptionRepository;public function __construct(RequestStack $requestStackSessionInterface $sessionTokenStorageInterface $tokenStorageEccubeConfig $eccubeConfigUrlGeneratorInterface $routerPaymentRepository $paymentRepositoryPluginRepository $pluginRepositoryConfigRepository $configRepositoryContainerInterface $containerOrderHelper $orderHelperCartService $cartServiceAmazonRequestService $amazonRequestServiceDeliveryRepository $deliveryRepositoryPaymentOptionRepository $paymentOptionRepository){goto aVoZ4;hmafY:$this->amazonRequestService $amazonRequestService;goto qGpsx;roPbp:$this->eccubeConfig $eccubeConfig;goto nKZ7S;SQPlW:$this->container $container;goto WxAU0;VKgeO:$this->paymentRepository $paymentRepository;goto HRaQz;WxAU0:$this->orderHelper $orderHelper;goto aiXmP;aiXmP:$this->cartService $cartService;goto hmafY;sLLW4:$this->session $session;goto hYte7;pqIVu:$this->paymentOptionRepository $paymentOptionRepository;goto k8smY;VLD8C:$this->configRepository $configRepository;goto SQPlW;hYte7:$this->tokenStorage $tokenStorage;goto roPbp;aVoZ4:$this->requestStack $requestStack;goto sLLW4;qGpsx:$this->deliveryRepository $deliveryRepository;goto pqIVu;HRaQz:$this->pluginRepository $pluginRepository;goto VLD8C;nKZ7S:$this->router $router;goto VKgeO;k8smY:}public static function getSubscribedEvents(){return [EccubeEvents::FRONT_CART_BUYSTEP_COMPLETE => 'amazon_cart_buystep''Cart/index.twig' => 'cart''Shopping/index.twig' => 'amazon_pay_shopping''Mypage/login.twig' => 'mypage_login''Shopping/confirm.twig' => 'amazon_pay_shopping_confirm'];}public function cart(TemplateEvent $event){goto oHfyb;f4S9l:return;goto MGINf;kmRPH:if (!($Config->getUseCartButton() == $this->eccubeConfig['amazon_pay_v2']['toggle']['off'])) {goto RGUKj;}goto f4S9l;Zgged:BUV21:goto j92EP;c3v82:goto n6C_z;goto SwFTt;yG2CA:foreach ($parameters['Carts'] as $Cart) {goto bFs97;qXqv9:$signature $this->amazonRequestService->signaturePayload($payload);goto K50mn;nOelm:wuOVV:goto V9Rt1;bFs97:$cartKey $Cart->getCartKey();goto NA6lH;C5JCl:$parameters['cart'][$cartKey]['signature'] = $signature;goto nOelm;K50mn:$parameters['cart'][$cartKey]['payload'] = $payload;goto C5JCl;NA6lH:$payload $this->amazonRequestService->createCheckoutSessionPayload($Cart->getCartKey());goto qXqv9;V9Rt1:}goto MrTmV;HmXUF:$AmazonSaleTypes = [];goto QWNDI;AMMqf:$event->setParameters($parameters);goto mY_Dt;j92EP:$Config $this->configRepository->get();goto kmRPH;SwFTt:igeDA:goto Mmxol;HSbyT:n6C_z:goto AMMqf;rutP5:$event->addSnippet('@AmazonPayV2/default/Cart/button.twig');goto nKr0E;OZYak:$parameters['AmazonPayV2Config'] = $Config;goto Sq8AH;Sfdza:$Payment $this->paymentRepository->findOneBy(['method_class' => AmazonPay::class]);goto yB4uQ;Sq8AH:if ($Config->getEnv() == $this->eccubeConfig['amazon_pay_v2']['env']['prod']) {goto igeDA;}goto lzlWd;MGINf:RGUKj:goto Sfdza;lzlWd:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['sandbox'];goto c3v82;JD855:if (!($Config->getCartButtonPlace() == $this->eccubeConfig['amazon_pay_v2']['button_place']['auto'])) {goto koxCA;}goto rutP5;MrTmV:H_6pS:goto OZYak;nKr0E:koxCA:goto tzB4D;mY_Dt:$event->addSnippet('@AmazonPayV2/default/Cart/amazon_pay_js.twig');goto JD855;U1u0T:return;goto Zgged;oHfyb:$parameters $event->getParameters();goto cLVu6;ppGFB:pOcXa:goto gLoLj;cLVu6:if (!empty($parameters['Carts'])) {goto BUV21;}goto U1u0T;yB4uQ:$AmazonDeliveries $this->paymentOptionRepository->findBy(['payment_id' => $Payment->getId()]);goto HmXUF;Mmxol:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['prod'];goto HSbyT;gLoLj:$parameters['AmazonSaleTypes'] = $AmazonSaleTypes;goto yG2CA;QWNDI:foreach ($AmazonDeliveries as $AmazonDelivery) {goto JXvCt;FX_In:xa8Rr:goto ARRQg;JXvCt:$Delivery $this->deliveryRepository->findOneBy(['id' => $AmazonDelivery->getDelivery()->getId()]);goto GTwJU;GTwJU:$AmazonSaleTypes[] = $Delivery->getSaleType()->getId();goto FX_In;ARRQg:}goto ppGFB;tzB4D:}public function amazon_cart_buystep(EventArgs $event){goto PlrsM;Yq8pk:$this->cartService->setPreOrderId(null);goto HFF8t;trH7S:m3bML:goto Dti8n;f6UKN:$this->session->remove($this->sessionAmazonProfileKey);goto Yq8pk;HFF8t:$this->cartService->save();goto trH7S;PlrsM:if (!($this->orderHelper->getNonmember() && $this->session->get($this->sessionAmazonProfileKey))) {goto m3bML;}goto MkSv4;MkSv4:$this->session->remove(OrderHelper::SESSION_NON_MEMBER);goto f6UKN;Dti8n:}public function amazon_pay_shopping(TemplateEvent $event){goto oYvK6;W2hdE:exit;goto CyOIF;Pndg9:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['prod'];goto A6AZM;C1inr:$parameters['useMailMagazine'] = $useMailMagazine;goto JE4_8;fEE4R:$event->addSnippet('@AmazonPayV2/default/Shopping/widgets.twig');goto d5P2v;sPhn2:if ($this->pluginRepository->findOneBy(['code' => 'MailMagazine4''enabled' => true]) || $this->pluginRepository->findOneBy(['code' => 'PostCarrier4''enabled' => true])) {goto cTDPC;}goto OdOe9;fOiBV:$parameters['AmazonPayV2Config'] = $Config;goto sPhn2;CyOIF:ebgpY:goto Hejjy;vYeJa:goto yFk83;goto GJqZ7;GJqZ7:cTDPC:goto Rxknz;OdOe9:$useMailMagazine false;goto vYeJa;JE4_8:if ($Config->getEnv() == $this->eccubeConfig['amazon_pay_v2']['env']['prod']) {goto eU5dp;}goto aQ0VV;AM9ez:goto J8r8P;goto miotL;Iz036:$parameters $event->getParameters();goto v7CCd;Rxknz:$useMailMagazine true;goto tm34k;jVZli:X5DOk:goto ysqHh;v7CCd:$parameters['amazonCheckoutSessionId'] = $amazonCheckoutSessionId;goto fOiBV;ysqHh:$Config $this->configRepository->get();goto fEE4R;Hejjy:return;goto jVZli;DYYIw:$parameters $event->getParameters();goto jGwvD;cm7PT:$Order $parameters['Order'];goto AhkWS;miotL:eU5dp:goto Pndg9;MU1mx:$referer $request->headers->get('referer');goto cm7PT;d5P2v:$event->addSnippet('@AmazonPayV2/default/Shopping/customer_regist_v2.twig');goto LxFxK;tm34k:yFk83:goto C1inr;A6AZM:J8r8P:goto LqlkU;aQ0VV:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['sandbox'];goto AM9ez;oYvK6:$request $this->requestStack->getMasterRequest();goto OoZ9Z;AhkWS:$Payment $Order->getPayment();goto lELcs;LxFxK:$amazonCheckoutSessionId $this->session->get($this->sessionAmazonCheckoutSessionIdKey);goto Iz036;lELcs:if (!($Payment && $Payment->getMethodClass() === AmazonPay::class && preg_match('/shopping_coupon/'$referer))) {goto ebgpY;}goto hQLcd;OoZ9Z:$uri $request->getUri();goto DYYIw;jGwvD:if (!(preg_match('/shopping\\/amazon_pay/'$uri) == false)) {goto X5DOk;}goto MU1mx;LqlkU:$event->setParameters($parameters);goto sY5v2;hQLcd:header("Location:" $this->container->get('router')->generate('amazon_pay_shopping'));goto W2hdE;sY5v2:}public function amazon_pay_shopping_confirm(TemplateEvent $event){goto fpDxz;GmkSt:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['prod'];goto IXbCJ;wn79J:nlxOx:goto DQFft;Ar0TF:$useMailMagazine false;goto bPh2u;h44fK:$useMailMagazine true;goto wn79J;pZbV2:if (!(preg_match('/shopping\\/amazon_pay/'$uri) == false)) {goto tKvHv;}goto a8m0b;AR2AE:if ($this->pluginRepository->findOneBy(['code' => 'MailMagazine4''enabled' => true]) || $this->pluginRepository->findOneBy(['code' => 'PostCarrier4''enabled' => true])) {goto UqmZa;}goto Ar0TF;fpDxz:$request $this->requestStack->getMasterRequest();goto dZqB4;IXbCJ:H_2UE:goto jS74I;a8m0b:return;goto UVDaL;HJ561:goto H_2UE;goto ZDsny;jS74I:$event->setParameters($parameters);goto zqfdT;iWixA:$event->addSnippet('@AmazonPayV2/default/Shopping/confirm_customer_regist_v2.twig');goto gQJEG;ZDsny:yrSPZ:goto GmkSt;qWT9X:$event->addSnippet('@AmazonPayV2/default/Shopping/confirm_widgets.twig');goto iWixA;gQJEG:$parameters $event->getParameters();goto FWwKq;UVDaL:tKvHv:goto jSXkH;FWwKq:$parameters['AmazonPayV2Config'] = $Config;goto AR2AE;jSXkH:$Config $this->configRepository->get();goto qWT9X;kLxYX:if ($Config->getEnv() == $this->eccubeConfig['amazon_pay_v2']['env']['prod']) {goto yrSPZ;}goto v49eQ;o92pp:UqmZa:goto h44fK;bPh2u:goto nlxOx;goto o92pp;DQFft:$parameters['useMailMagazine'] = $useMailMagazine;goto kLxYX;v49eQ:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['sandbox'];goto HJ561;dZqB4:$uri $request->getUri();goto pZbV2;zqfdT:}public function mypage_login(TemplateEvent $event){goto L7ja5;nkKV8:return;goto NOGAg;L7ja5:$Config $this->configRepository->get();goto RV3v6;e9oUD:if ($Config->getEnv() == $this->eccubeConfig['amazon_pay_v2']['env']['prod']) {goto REKAO;}goto OLu4n;NOGAg:jND4F:goto VkPBA;fuKL0:$this->session->set($this->sessionAmazonLoginStateKey$state);goto qEOvQ;Cycer:$payload $this->amazonRequestService->createSigninPayload($returnUrl);goto b9GsZ;LNTbW:$returnUrl $this->router->generate('login_with_amazon', ['state' => $state], UrlGeneratorInterface::ABSOLUTE_URL);goto ClV9B;RV3v6:if (!($Config->getUseMypageLoginButton() == $this->eccubeConfig['amazon_pay_v2']['toggle']['off'])) {goto jND4F;}goto nkKV8;B59MK:$event->addSnippet('@AmazonPayV2/default/Mypage/amazon_login_js.twig');goto IDPg5;VkPBA:$state $this->session->get($this->sessionAmazonLoginStateKey);goto HHk2h;XoeoE:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['prod'];goto JGY10;Cp_BX:$parameters['payload'] = $payload;goto Dz1t1;C0xtI:goto vwt6_;goto tWgTU;ClV9B:$parameters $event->getParameters();goto Cycer;HHk2h:if ($state) {goto RepgZ;}goto tZCZi;OLu4n:$parameters['AmazonPayV2Api'] = $this->eccubeConfig['amazon_pay_v2']['api']['sandbox'];goto C0xtI;yXIPD:if (!($Config->getMypageLoginButtonPlace() == $this->eccubeConfig['amazon_pay_v2']['button_place']['auto'])) {goto FaeWr;}goto XgZza;HPcyD:$parameters['AmazonPayV2Config'] = $Config;goto e9oUD;b9GsZ:$signature $this->amazonRequestService->signaturePayload($payload);goto Cp_BX;tZCZi:$state bin2hex(Random::string(16));goto fuKL0;qEOvQ:RepgZ:goto LNTbW;rIokg:$event->setParameters($parameters);goto yXIPD;XgZza:$event->addSnippet('@AmazonPayV2/default/Mypage/login_page_button.twig');goto oismC;JGY10:vwt6_:goto rIokg;tWgTU:REKAO:goto XoeoE;MYaqt:$parameters['buttonColor'] = $Config->getMypageLoginButtonColor();goto HPcyD;oismC:FaeWr:goto B59MK;Dz1t1:$parameters['signature'] = $signature;goto MYaqt;IDPg5:}}