Beispiel #1
0
 /**
  * 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;
 }
Beispiel #2
0
 /**
  * @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();
 }
Beispiel #4
0
 /**
  * Execute method getElementHtml from parrent class
  *
  * @return string
  */
 public function getParentElementHtml()
 {
     return parent::getElementHtml();
 }
Beispiel #5
0
 /**
  * @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);
 }