mirror of
https://github.com/bdnugget/magento2.git
synced 2026-11-07 09:17:35 +00:00
- removed @since 2.0.0 as it is a base release - updated version in @since and @deprecated tag taking into account all patch releases
143 lines
4.6 KiB
PHP
143 lines
4.6 KiB
PHP
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Customer\Controller;
|
|
|
|
use Magento\Framework\App\RequestInterface;
|
|
|
|
/**
|
|
* Customer address controller
|
|
*
|
|
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
|
|
*/
|
|
abstract class Address extends \Magento\Framework\App\Action\Action
|
|
{
|
|
/**
|
|
* @var \Magento\Customer\Model\Session
|
|
*/
|
|
protected $_customerSession;
|
|
|
|
/**
|
|
* @var \Magento\Framework\Data\Form\FormKey\Validator
|
|
*/
|
|
protected $_formKeyValidator;
|
|
|
|
/**
|
|
* @var \Magento\Customer\Api\AddressRepositoryInterface
|
|
*/
|
|
protected $_addressRepository;
|
|
|
|
/**
|
|
* @var \Magento\Customer\Model\Metadata\FormFactory
|
|
*/
|
|
protected $_formFactory;
|
|
|
|
/**
|
|
* @var \Magento\Customer\Api\Data\AddressInterfaceFactory
|
|
*/
|
|
protected $addressDataFactory;
|
|
|
|
/**
|
|
* @var \Magento\Customer\Api\Data\RegionInterfaceFactory
|
|
*/
|
|
protected $regionDataFactory;
|
|
|
|
/**
|
|
* @var \Magento\Framework\Reflection\DataObjectProcessor
|
|
*/
|
|
protected $_dataProcessor;
|
|
|
|
/**
|
|
* @var \Magento\Framework\Api\DataObjectHelper
|
|
*/
|
|
protected $dataObjectHelper;
|
|
|
|
/**
|
|
* @var \Magento\Framework\Controller\Result\ForwardFactory
|
|
*/
|
|
protected $resultForwardFactory;
|
|
|
|
/**
|
|
* @var \Magento\Framework\View\Result\PageFactory
|
|
*/
|
|
protected $resultPageFactory;
|
|
|
|
/**
|
|
* @param \Magento\Framework\App\Action\Context $context
|
|
* @param \Magento\Customer\Model\Session $customerSession
|
|
* @param \Magento\Framework\Data\Form\FormKey\Validator $formKeyValidator
|
|
* @param \Magento\Customer\Model\Metadata\FormFactory $formFactory
|
|
* @param \Magento\Customer\Api\AddressRepositoryInterface $addressRepository
|
|
* @param \Magento\Customer\Api\Data\AddressInterfaceFactory $addressDataFactory
|
|
* @param \Magento\Customer\Api\Data\RegionInterfaceFactory $regionDataFactory
|
|
* @param \Magento\Framework\Reflection\DataObjectProcessor $dataProcessor
|
|
* @param \Magento\Framework\Api\DataObjectHelper $dataObjectHelper
|
|
* @param \Magento\Framework\Controller\Result\ForwardFactory $resultForwardFactory
|
|
* @param \Magento\Framework\View\Result\PageFactory $resultPageFactory
|
|
* @SuppressWarnings(PHPMD.ExcessiveParameterList)
|
|
*/
|
|
public function __construct(
|
|
\Magento\Framework\App\Action\Context $context,
|
|
\Magento\Customer\Model\Session $customerSession,
|
|
\Magento\Framework\Data\Form\FormKey\Validator $formKeyValidator,
|
|
\Magento\Customer\Model\Metadata\FormFactory $formFactory,
|
|
\Magento\Customer\Api\AddressRepositoryInterface $addressRepository,
|
|
\Magento\Customer\Api\Data\AddressInterfaceFactory $addressDataFactory,
|
|
\Magento\Customer\Api\Data\RegionInterfaceFactory $regionDataFactory,
|
|
\Magento\Framework\Reflection\DataObjectProcessor $dataProcessor,
|
|
\Magento\Framework\Api\DataObjectHelper $dataObjectHelper,
|
|
\Magento\Framework\Controller\Result\ForwardFactory $resultForwardFactory,
|
|
\Magento\Framework\View\Result\PageFactory $resultPageFactory
|
|
) {
|
|
$this->_customerSession = $customerSession;
|
|
$this->_formKeyValidator = $formKeyValidator;
|
|
$this->_formFactory = $formFactory;
|
|
$this->_addressRepository = $addressRepository;
|
|
$this->addressDataFactory = $addressDataFactory;
|
|
$this->regionDataFactory = $regionDataFactory;
|
|
$this->_dataProcessor = $dataProcessor;
|
|
$this->dataObjectHelper = $dataObjectHelper;
|
|
$this->resultForwardFactory = $resultForwardFactory;
|
|
$this->resultPageFactory = $resultPageFactory;
|
|
parent::__construct($context);
|
|
}
|
|
|
|
/**
|
|
* Retrieve customer session object
|
|
*
|
|
* @return \Magento\Customer\Model\Session
|
|
*/
|
|
protected function _getSession()
|
|
{
|
|
return $this->_customerSession;
|
|
}
|
|
|
|
/**
|
|
* Check customer authentication
|
|
*
|
|
* @param RequestInterface $request
|
|
* @return \Magento\Framework\App\ResponseInterface
|
|
*/
|
|
public function dispatch(RequestInterface $request)
|
|
{
|
|
if (!$this->_getSession()->authenticate()) {
|
|
$this->_actionFlag->set('', 'no-dispatch', true);
|
|
}
|
|
return parent::dispatch($request);
|
|
}
|
|
|
|
/**
|
|
* @param string $route
|
|
* @param array $params
|
|
* @return string
|
|
*/
|
|
protected function _buildUrl($route = '', $params = [])
|
|
{
|
|
/** @var \Magento\Framework\UrlInterface $urlBuilder */
|
|
$urlBuilder = $this->_objectManager->create(\Magento\Framework\UrlInterface::class);
|
|
return $urlBuilder->getUrl($route, $params);
|
|
}
|
|
}
|