| Current Path : /var/www/clients/client3/web2/web/vendor/magento/module-paypal/Controller/Hostedpro/ |
| Current File : /var/www/clients/client3/web2/web/vendor/magento/module-paypal/Controller/Hostedpro/Cancel.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\Paypal\Controller\Hostedpro;
use Magento\Framework\App\Action\Action;
use Magento\Framework\App\Action\Context;
use Magento\Framework\App\Action\HttpGetActionInterface;
use Magento\Framework\App\CsrfAwareActionInterface;
use Magento\Framework\App\Request\InvalidRequestException;
use Magento\Framework\App\RequestInterface;
use Magento\Paypal\Helper\Checkout;
/**
* PayPal Hostedpro cancel controller.
*/
class Cancel extends Action implements CsrfAwareActionInterface, HttpGetActionInterface
{
/**
* @var Checkout
*/
private $checkoutHelper;
/**
* @param Context $context
* @param Checkout $checkoutHelper
*/
public function __construct(
Context $context,
Checkout $checkoutHelper
) {
parent::__construct($context);
$this->checkoutHelper = $checkoutHelper;
}
/**
* Customer canceled payment on gateway side.
*
* @return void
*/
public function execute()
{
$this->checkoutHelper->cancelCurrentOrder('');
$this->checkoutHelper->restoreQuote();
$this->_redirect('checkout', ['_fragment' => 'payment']);
}
/**
* @inheritDoc
*/
public function createCsrfValidationException(RequestInterface $request): ?InvalidRequestException
{
return null;
}
/**
* @inheritDoc
*/
public function validateForCsrf(RequestInterface $request): ?bool
{
return true;
}
}