123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Sales\Controller\Adminhtml\Order\Create;
- use Magento\Framework\App\Action\HttpGetActionInterface;
- use Magento\Framework\App\Action\HttpPostActionInterface as HttpPostActionInterface;
- use Magento\Backend\App\Action;
- use Magento\Backend\Model\View\Result\ForwardFactory;
- use Magento\Framework\View\Result\PageFactory;
- use Magento\Framework\Controller\Result\RawFactory;
- use Magento\Sales\Controller\Adminhtml\Order\Create as CreateAction;
- class LoadBlock extends CreateAction implements HttpPostActionInterface, HttpGetActionInterface
- {
- /**
- * @var RawFactory
- */
- protected $resultRawFactory;
- /**
- * @param Action\Context $context
- * @param \Magento\Catalog\Helper\Product $productHelper
- * @param \Magento\Framework\Escaper $escaper
- * @param PageFactory $resultPageFactory
- * @param ForwardFactory $resultForwardFactory
- * @param RawFactory $resultRawFactory
- */
- public function __construct(
- Action\Context $context,
- \Magento\Catalog\Helper\Product $productHelper,
- \Magento\Framework\Escaper $escaper,
- PageFactory $resultPageFactory,
- ForwardFactory $resultForwardFactory,
- RawFactory $resultRawFactory
- ) {
- $this->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);
- }
- }
|