resultRawFactory = $resultRawFactory; parent::__construct( $context, $productHelper, $escaper, $resultPageFactory, $resultForwardFactory ); } /** * Loading page block * * @return \Magento\Backend\Model\View\Result\Redirect|\Magento\Framework\Controller\Result\Raw */ public function execute() { $request = $this->getRequest(); try { $this->_initSession()->_processData(); } catch (\Magento\Framework\Exception\LocalizedException $e) { $this->_reloadQuote(); $this->messageManager->addErrorMessage($e->getMessage()); } catch (\Exception $e) { $this->_reloadQuote(); $this->messageManager->addExceptionMessage($e, $e->getMessage()); } $asJson = $request->getParam('json'); $block = $request->getParam('block'); /** @var \Magento\Framework\View\Result\Page $resultPage */ $resultPage = $this->resultPageFactory->create(); if ($asJson) { $resultPage->addHandle('sales_order_create_load_block_json'); } else { $resultPage->addHandle('sales_order_create_load_block_plain'); } if ($block) { $blocks = explode(',', $block); if ($asJson && !in_array('message', $blocks)) { $blocks[] = 'message'; } foreach ($blocks as $block) { $resultPage->addHandle('sales_order_create_load_block_' . $block); } } $result = $resultPage->getLayout()->renderElement('content'); if ($request->getParam('as_js_varname')) { $this->_objectManager->get(\Magento\Backend\Model\Session::class)->setUpdateResult($result); return $this->resultRedirectFactory->create()->setPath('sales/*/showUpdateResult'); } return $this->resultRawFactory->create()->setContents($result); } }