/** * Get Element Html * * @return string */ public function getElementHtml() { $elementHtml = parent::getElementHtml(); $switchAttributeCode = $this->getAttribute()->getAttributeCode() . '_type'; $switchAttributeValue = $this->getProduct()->getData($switchAttributeCode); $html = '<select name="product[' . $switchAttributeCode . ']" id="' . $switchAttributeCode . '" type="select" class="required-entry select next-toinput"' . ($this->getProduct()->getId() && $this->getAttribute()->getAttributeCode() == 'price' || $this->getElement()->getReadonly() ? ' disabled="disabled"' : '') . '> <option value="">' . __('-- Select --') . '</option> <option ' . ($switchAttributeValue == self::DYNAMIC ? 'selected' : '') . ' value="' . self::DYNAMIC . '">' . __('Dynamic') . '</option> <option ' . ($switchAttributeValue == self::FIXED ? 'selected' : '') . ' value="' . self::FIXED . '">' . __('Fixed') . '</option> </select>'; if (!($this->getAttribute()->getAttributeCode() == 'price' && $this->getCanReadPrice() === false)) { $html = '<div class="' . $this->getAttribute()->getAttributeCode() . ' ">' . $elementHtml . '</div>' . $html; } if ($this->getDisableChild() && !$this->getElement()->getReadonly()) { $html .= "<script type=\"text/javascript\">\n function " . $switchAttributeCode . "_change() {\n if (\$('" . $switchAttributeCode . "').value == '" . self::DYNAMIC . "') {\n if (\$('" . $this->getAttribute()->getAttributeCode() . "')) {\n \$('" . $this->getAttribute()->getAttributeCode() . "').disabled = true;\n \$('" . $this->getAttribute()->getAttributeCode() . "').value = '';\n \$('" . $this->getAttribute()->getAttributeCode() . "').removeClassName('required-entry');\n }\n\n if (\$('dynamic-price-warning')) {\n \$('dynamic-price-warning').show();\n }\n } else {\n if (\$('" . $this->getAttribute()->getAttributeCode() . "')) {"; if ($this->getAttribute()->getAttributeCode() == 'price' && $this->getCanEditPrice() === false && $this->getCanReadPrice() === true && $this->getProduct()->isObjectNew()) { $defaultProductPrice = $this->getDefaultProductPrice() ? $this->getDefaultProductPrice() : "''"; $html .= "\$('" . $this->getAttribute()->getAttributeCode() . "').value = " . $defaultProductPrice . ";"; } else { $html .= "\$('" . $this->getAttribute()->getAttributeCode() . "').disabled = false;\n \$('" . $this->getAttribute()->getAttributeCode() . "').addClassName('required-entry');"; } $html .= "}\n\n if (\$('dynamic-price-warning')) {\n \$('dynamic-price-warning').hide();\n }\n }\n }" . "\n"; if (!($this->getAttribute()->getAttributeCode() == 'price' && !$this->getCanEditPrice() && !$this->getProduct()->isObjectNew())) { $html .= "\$('" . $switchAttributeCode . "').observe('change', " . $switchAttributeCode . "_change);"; } $html .= $switchAttributeCode . "_change();\n </script>"; } return $html; }
/** * @return string */ public function getElementHtml() { /** @var \Magento\Framework\Data\Form\Element\AbstractElement $element */ $element = $this->getElement(); if (!$element->getValue()) { return parent::getElementHtml(); } $element->setOnkeyup("onUrlkeyChanged('" . $element->getHtmlId() . "')"); $element->setOnchange("onUrlkeyChanged('" . $element->getHtmlId() . "')"); $data = array('name' => $element->getData('name') . '_create_redirect', 'disabled' => true); /** @var \Magento\Framework\Data\Form\Element\Hidden $hidden */ $hidden = $this->_elementFactory->create('hidden', array('data' => $data)); $hidden->setForm($element->getForm()); $storeId = $element->getForm()->getDataObject()->getStoreId(); $data['html_id'] = $element->getHtmlId() . '_create_redirect'; $data['label'] = __('Create Permanent Redirect for old URL'); $data['value'] = $element->getValue(); $data['checked'] = $this->_catalogData->shouldSaveUrlRewritesHistory($storeId); /** @var \Magento\Framework\Data\Form\Element\Checkbox $checkbox */ $checkbox = $this->_elementFactory->create('checkbox', array('data' => $data)); $checkbox->setForm($element->getForm()); return parent::getElementHtml() . '<br/>' . $hidden->getElementHtml() . $checkbox->getElementHtml() . $checkbox->getLabelHtml(); }
/** * @return string */ public function getElementHtml() { /** @var \Magento\Framework\Data\Form\Element\AbstractElement $element */ $element = $this->getElement(); if (!$element->getValue()) { return parent::getElementHtml(); } $element->setOnkeyup("onUrlkeyChanged('" . $element->getHtmlId() . "')"); $element->setOnchange("onUrlkeyChanged('" . $element->getHtmlId() . "')"); $data = ['name' => $element->getData('name') . '_create_redirect', 'disabled' => true]; /** @var \Magento\Framework\Data\Form\Element\Hidden $hidden */ $hidden = $this->_elementFactory->create('hidden', ['data' => $data]); $hidden->setForm($element->getForm()); $storeId = $element->getForm()->getDataObject()->getStoreId(); $data['html_id'] = $element->getHtmlId() . '_create_redirect'; $data['label'] = __('Create Permanent Redirect for old URL'); $data['value'] = $element->getValue(); $data['checked'] = $this->_scopeConfig->isSetFlag(self::XML_PATH_SEO_SAVE_HISTORY, ScopeInterface::SCOPE_STORE, $storeId); /** @var \Magento\Framework\Data\Form\Element\Checkbox $checkbox */ $checkbox = $this->_elementFactory->create('checkbox', ['data' => $data]); $checkbox->setForm($element->getForm()); return parent::getElementHtml() . '<br/>' . $hidden->getElementHtml() . $checkbox->getElementHtml() . $checkbox->getLabelHtml(); }
/** * Execute method getElementHtml from parrent class * * @return string */ public function getParentElementHtml() { return parent::getElementHtml(); }
/** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Framework\Registry $registry * @param \Magento\Framework\View\Element\BlockFactory $blockFactory * @param array $data */ public function __construct(\Magento\Backend\Block\Template\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\View\Element\BlockFactory $blockFactory, array $data = array()) { $this->_coreRegistry = $registry; $this->_blockFactory = $blockFactory; parent::__construct($context, $data); }