18 class View extends ProductAction implements HttpGetActionInterface, HttpPostActionInterface
52 parent::__construct($context);
64 $resultRedirect = $this->resultRedirectFactory->create();
65 return $resultRedirect->setPath(
'');
67 $resultForward = $this->resultForwardFactory->create();
68 $resultForward->forward(
'noroute');
69 return $resultForward;
81 $categoryId = (int) $this->
getRequest()->getParam(
'category',
false);
83 $specifyOptions = $this->
getRequest()->getParam(
'options');
85 if ($this->
getRequest()->isPost() && $this->
getRequest()->getParam(self::PARAM_NAME_URL_ENCODED)) {
92 if ($specifyOptions) {
93 $notice =
$product->getTypeInstance()->getSpecifyOptionMessage();
94 $this->messageManager->addNoticeMessage($notice);
99 $this->_objectManager->get(\
Magento\Framework\
Json\Helper\Data::class)->jsonEncode([
100 'backUrl' => $this->
_redirect->getRedirectUrl()
105 $resultRedirect = $this->resultRedirectFactory->create();
106 $resultRedirect->setRefererOrBaseUrl();
107 return $resultRedirect;
111 $params = new \Magento\Framework\DataObject();
112 $params->setCategoryId($categoryId);
113 $params->setSpecifyOptions($specifyOptions);
117 $page = $this->resultPageFactory->create();
120 }
catch (\
Magento\Framework\Exception\NoSuchEntityException $e) {
122 }
catch (\Exception $e) {
123 $this->_objectManager->get(\Psr\
Log\LoggerInterface::class)->critical($e);
124 $resultForward = $this->resultForwardFactory->create();
125 $resultForward->forward(
'noroute');
126 return $resultForward;
_redirect($path, $arguments=[])
elseif(isset( $params[ 'redirect_parent']))
__construct(Context $context, \Magento\Catalog\Helper\Product\View $viewHelper, \Magento\Framework\Controller\Result\ForwardFactory $resultForwardFactory, PageFactory $resultPageFactory)
$params[\Magento\Store\Model\StoreManager::PARAM_RUN_CODE]