!! insert this before `
!header`
: `
!read js
/external
/tinymce
.phtml xxxx`
!! with xxxx pointing to an existing DOM element (a textarea)
!if $wims_read_parm!=
!let name_WYSIWYG_activate=Activate editor
!let name_WYSIWYG_disable=Disable editor
!if $lang=fr
!set tiny_lang=language: 'fr_FR',
!let name_WYSIWYG_activate=Activer l'éditeur
!let name_WYSIWYG_disable=Désactiver l'éditeur
!endif
!if $lang=it
!set tiny_lang=language: 'it',
!let name_WYSIWYG_activate=Activate editor
!let name_WYSIWYG_disable=Disable editor
!endif
!if $lang=cn
!set tiny_lang=language: 'zh_CN',
!let name_WYSIWYG_activate=Activate editor
!let name_WYSIWYG_disable=Disable editor
!endif
!set wims_html_header= !append line <script src="scripts/js/external/tinymce/tinymce.min.js"></script>\
<style>.hidden_btn{display:none}.wysiwyg_btns{text-align:right;font-size:.6em}</style>\
<script>\
document.addEventListener("DOMContentLoaded", function() {\
/* Insert "enable/disable editor" buttons */\
var ed_instances = document.querySelectorAll("$wims_read_parm");\
ed_instances.forEach(function(ed) {\
if(ed.id){\
var div = document.createElement('div');\
div.classList.add('wysiwyg_btns');\
var a1 = document.createElement('a');\
var linkText = document.createTextNode("$name_WYSIWYG_disable");\
a1.appendChild(linkText);\
a1.setAttribute("onclick","javascript:tinymce.execCommand('mceRemoveEditor',true,'"+ed.id+"');this.classList.add('hidden_btn');this.nextElementSibling.classList.remove('hidden_btn');");\
div.appendChild(a1);\
var a2 = document.createElement('a');\
var linkText = document.createTextNode("$name_WYSIWYG_activate");\
a2.appendChild(linkText);\
a2.setAttribute("onclick","javascript:tinymce.execCommand('mceAddEditor',true,'"+ed.id+"');this.classList.add('hidden_btn');this.previousElementSibling.classList.remove('hidden_btn');");\
a2.classList.add("hidden_btn");\
div.appendChild(a2);\
/* insert just after editor */\
ed.parentNode.insertBefore(div, ed.nextSibling);\
}\
});\
/* Initialize editors */\
tinymce.init({\
selector:'$wims_read_parm',\
plugins: 'code help hr link lists',\
block_formats : tinymce.translate('Paragraph')+'=p;' +tinymce.translate('Heading 2')+'=h2;'+tinymce.translate('Heading 3')+'=h3;' +tinymce.translate('Heading 4')+'=h4;' +tinymce.translate('Heading 5')+'=h5;' +tinymce.translate('Heading 6')+'=h6;' +tinymce.translate('Preformatted')+'=pre',\
menubar: false,\
branding: false,\
toolbar: 'undo redo | formatselect | bold italic strikethrough | subscript superscript | hr link | bullist numlist | removeformat | code | help',\
$tiny_lang\
content_css : 'html/themes/$wims_theme/css.css',\
body_class: 'main_body',\
content_style : 'a, .ui-widget-content a{color:$wims_link_color;}a:hover, a:focus {color:$wims_hlink_color;}table.wimstable th{background-color: $wims_ref_bgcolor;color: $wims_ref_menucolor;}table.wimstable th a{color: $wims_ref_menucolor;}.wimstable caption a{color: $wims_ref_menucolor;}.wims_emph {color:$wims_ref_bgcolor;}input[type="submit"],input[type="button"],.main_body .wims_button{background-color:$wims_ref_button_bgcolor;color:$wims_ref_button_color;}.main_body .wims_button_help{background-color:$wims_ref_button_help_bgcolor;color:$wims_ref_button_help_color;}.property_fields{border-color:$wims_ref_bgcolor;}.property_fields legend{background-color: $wims_ref_bgcolor;}.property_fields legend,.property_fields legend>a{color:$wims_ref_menucolor;}.wims_color1 {background-color: $wims_ref_bgcolor;color:$wims_ref_menucolor;}.wims_color2 {background-color:$wims_ref_button_bgcolor;color:$wims_ref_button_color;}.wims_color3 {background-color:$wims_ref_button_help_bgcolor;color:$wims_ref_button_help_color;}'\
});\
});</script> to $wims_html_header
!endif