123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\SalesRule\Controller\Adminhtml\Promo\Quote;
- use Magento\Framework\App\Action\HttpPostActionInterface;
- /**
- * Controller class NewConditionHtml. Returns condition html
- */
- class NewConditionHtml extends \Magento\SalesRule\Controller\Adminhtml\Promo\Quote implements HttpPostActionInterface
- {
- /**
- * New condition html action
- *
- * @return void
- */
- public function execute()
- {
- $id = $this->getRequest()->getParam('id');
- $formName = $this->getRequest()->getParam('form_namespace');
- $typeArr = explode('|', str_replace('-', '/', $this->getRequest()->getParam('type')));
- $type = $typeArr[0];
- $model = $this->_objectManager->create(
- $type
- )->setId(
- $id
- )->setType(
- $type
- )->setRule(
- $this->_objectManager->create(\Magento\SalesRule\Model\Rule::class)
- )->setPrefix(
- 'conditions'
- );
- if (!empty($typeArr[1])) {
- $model->setAttribute($typeArr[1]);
- }
- if ($model instanceof \Magento\Rule\Model\Condition\AbstractCondition) {
- $model->setJsFormObject($this->getRequest()->getParam('form'));
- $model->setFormName($formName);
- $html = $model->asHtmlRecursive();
- } else {
- $html = '';
- }
- $this->getResponse()->setBody($html);
- }
- }
|