/** * Ajax handler to response configuration fieldset of composite product in quote items * * @return void */ public function execute() { // Prepare data $configureResult = new \Magento\Framework\Object(); try { $quoteItemId = (int) $this->getRequest()->getParam('id'); if (!$quoteItemId) { throw new \Magento\Framework\Model\Exception(__('Quote item id is not received.')); } $quoteItem = $this->_objectManager->create('Magento\\Sales\\Model\\Quote\\Item')->load($quoteItemId); if (!$quoteItem->getId()) { throw new \Magento\Framework\Model\Exception(__('Quote item is not loaded.')); } $configureResult->setOk(true); $optionCollection = $this->_objectManager->create('Magento\\Sales\\Model\\Quote\\Item\\Option')->getCollection()->addItemFilter(array($quoteItemId)); $quoteItem->setOptions($optionCollection->getOptionsByItem($quoteItem)); $configureResult->setBuyRequest($quoteItem->getBuyRequest()); $configureResult->setCurrentStoreId($quoteItem->getStoreId()); $configureResult->setProductId($quoteItem->getProductId()); $sessionQuote = $this->_objectManager->get('Magento\\Backend\\Model\\Session\\Quote'); $configureResult->setCurrentCustomerId($sessionQuote->getCustomerId()); } catch (\Exception $e) { $configureResult->setError(true); $configureResult->setMessage($e->getMessage()); } // Render page $this->_objectManager->get('Magento\\Catalog\\Helper\\Product\\Composite')->renderConfigureResult($configureResult); }
/** * Ajax handler to response configuration fieldset of composite product in order * * @return void */ public function execute() { // Prepare data $productId = (int) $this->getRequest()->getParam('id'); $configureResult = new \Magento\Framework\Object(); $configureResult->setOk(true); $configureResult->setProductId($productId); $sessionQuote = $this->_objectManager->get('Magento\\Backend\\Model\\Session\\Quote'); $configureResult->setCurrentStoreId($sessionQuote->getStore()->getId()); $configureResult->setCurrentCustomerId($sessionQuote->getCustomerId()); // Render page $this->_objectManager->get('Magento\\Catalog\\Helper\\Product\\Composite')->renderConfigureResult($configureResult); }
/** * Ajax handler to response configuration fieldset of composite product in customer's wishlist. * * @return void */ public function execute() { $configureResult = new \Magento\Framework\Object(); try { $this->_initData(); $configureResult->setProductId($this->_wishlistItem->getProductId()); $configureResult->setBuyRequest($this->_wishlistItem->getBuyRequest()); $configureResult->setCurrentStoreId($this->_wishlistItem->getStoreId()); $configureResult->setCurrentCustomerId($this->_wishlist->getCustomerId()); $configureResult->setOk(true); } catch (Exception $e) { $configureResult->setError(true); $configureResult->setMessage($e->getMessage()); } $this->_objectManager->get('Magento\\Catalog\\Helper\\Product\\Composite')->renderConfigureResult($configureResult); }
/** * Ajax handler to response configuration fieldset of composite product in customer's cart * * @return void */ public function execute() { $configureResult = new \Magento\Framework\Object(); try { $this->_initData(); $quoteItem = $this->_quoteItem; $optionCollection = $this->_objectManager->create('Magento\\Sales\\Model\\Quote\\Item\\Option')->getCollection()->addItemFilter($quoteItem); $quoteItem->setOptions($optionCollection->getOptionsByItem($quoteItem)); $configureResult->setOk(true); $configureResult->setProductId($quoteItem->getProductId()); $configureResult->setBuyRequest($quoteItem->getBuyRequest()); $configureResult->setCurrentStoreId($quoteItem->getStoreId()); $configureResult->setCurrentCustomerId($this->_customerId); } catch (\Exception $e) { $configureResult->setError(true); $configureResult->setMessage($e->getMessage()); } $this->_objectManager->get('Magento\\Catalog\\Helper\\Product\\Composite')->renderConfigureResult($configureResult); }