/** * @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(); }
/** * @magentoConfigFixture current_store catalog/seo/save_rewrites_history 0 */ public function testShouldSaveUrlRewritesHistory() { $this->assertFalse($this->helper->shouldSaveUrlRewritesHistory()); }
/** * Indicate whether to save URL Rewrite History or not (create redirects to old URLs) * * @param int $storeId Store View * @return bool */ public function getShouldSaveRewritesHistory($storeId = null) { if ($this->_saveRewritesHistory !== null) { return $this->_saveRewritesHistory; } return $this->_catalogData->shouldSaveUrlRewritesHistory($storeId); }