/** * Retrieve additional html and put it at the end of element html * * @return string */ public function getAfterElementHtml() { $html = parent::getAfterElementHtml(); if ($this->getIsWysiwygEnabled()) { $disabled = $this->getDisabled() || $this->getReadonly(); $html .= $this->_layout->createBlock('Magento\\Backend\\Block\\Widget\\Button', '', array('data' => array('label' => __('WYSIWYG Editor'), 'type' => 'button', 'disabled' => $disabled, 'class' => $disabled ? 'disabled action-wysiwyg' : 'action-wysiwyg', 'onclick' => 'catalogWysiwygEditor.open(\'' . $this->_backendData->getUrl('catalog/product/wysiwyg') . '\', \'' . $this->getHtmlId() . '\')')))->toHtml(); $html .= <<<HTML <script type="text/javascript"> jQuery('#{$this->getHtmlId()}') .addClass('wysiwyg-editor') .data( 'wysiwygEditor', new tinyMceWysiwygSetup( '{$this->getHtmlId()}', { settings: { theme_advanced_buttons1 : 'bold,italic,|,justifyleft,justifycenter,justifyright,|,' + 'fontselect,fontsizeselect,|,forecolor,backcolor,|,link,unlink,image,|,bullist,numlist,|,code', theme_advanced_buttons2: null, theme_advanced_buttons3: null, theme_advanced_buttons4: null, theme_advanced_statusbar_location: null } } ).turnOn() ); </script> HTML; } return $html; }
/** * Retrieve additional html and put it at the end of element html * * @return string */ public function getAfterElementHtml() { $config = $this->_wysiwygConfig->getConfig(); $config = json_encode($config->getData()); $html = parent::getAfterElementHtml(); if ($this->getIsWysiwygEnabled()) { $disabled = $this->getDisabled() || $this->getReadonly(); $html .= $this->_layout->createBlock('Magento\\Backend\\Block\\Widget\\Button', '', ['data' => ['label' => __('WYSIWYG Editor'), 'type' => 'button', 'disabled' => $disabled, 'class' => 'action-wysiwyg', 'onclick' => 'catalogWysiwygEditor.open(\'' . $this->_backendData->getUrl('catalog/product/wysiwyg') . '\', \'' . $this->getHtmlId() . '\')']])->toHtml(); $html .= <<<HTML <script> require([ 'jquery', 'mage/adminhtml/wysiwyg/tiny_mce/setup' ], function(jQuery){ var config = {$config}, editor; jQuery.extend(config, { settings: { theme_advanced_buttons1 : 'bold,italic,|,justifyleft,justifycenter,justifyright,|,' + 'fontselect,fontsizeselect,|,forecolor,backcolor,|,link,unlink,image,|,bullist,numlist,|,code', theme_advanced_buttons2: null, theme_advanced_buttons3: null, theme_advanced_buttons4: null, theme_advanced_statusbar_location: null }, files_browser_window_url: false }); editor = new tinyMceWysiwygSetup( '{$this->getHtmlId()}', config ); editor.turnOn(); jQuery('#{$this->getHtmlId()}') .addClass('wysiwyg-editor') .data( 'wysiwygEditor', editor ); }); </script> HTML; } return $html; }