Responsive filemanager для TinyMCE 6

Інше 27 бер. 2022
 Responsive filemanager TinyMCE 6

Responsivefilemanager - дуже хороший файловий менеджер, легко інтегрується  з TinyMCE 4 та 5. Але після виходу TinyMCE 6 все дещо змінилось та потрібно переписати інтеграцію під нову версію TinyMCE.

Щоб розібратись що змінилось є мануал від розробників тут.
Якщо коротко, то змін багато, але ми не будемо на них зупинятись детально, а підправимо плагін від TinyMCE 5 під TinyMCE 6.

Для початку, щоб працювала нова версія, потрібно виключили з налаштувань плагіни:

bbcode,colorpicker,contextmenu,fullpage,legacyoutput,spellchecker,textcolor

Та всі опції, що більше не підтримуються:

autoresize_on_init,content_editable_state,padd_empty_with_br,block_elements, boolean_attributes,editor_deselector,editor_selector,elements,file_browser_callback_types,filepicker_validator_handler,force_hex_style_colors,force_p_newlines,gecko_spellcheck,images_dataimg_filter,media_scripts,mode,move_caret_before_on_enter_elements,'non_empty_elements,self_closing_elements,short_ended_elements,special,spellchecker_select_languages,spellchecker_whitelist,tab_focus,tabfocus_elements,table_responsive_width,text_block_elements,text_inline_elements,toolbar_drawer,types,validate,whitespace_elements,paste_enable_default_filters,paste_filter_drop,paste_word_valid_elements,paste_retain_style_properties,paste_convert_word_fake_lists

Щоб адаптувати версію Responsivefilemanager TinyMCE 5 під TinyMCE 6 Потрібно:
Замінити 

editor.settings.{тут назва параметру }

на

editor.getParam('{тут назва параметру }')

Наприклад:

if (typeof editor.settings.filemanager_title !== "undefined" && editor.settings.filemanager_title ) {
            title = editor.settings.filemanager_title 
 }
// замінимо на
if (typeof editor.getParam('filemanager_title') !== "undefined" && editor.getParam('filemanager_title')) {
            title = editor.getParam('filemanager_title');
 }

Загальна документація 
Якщо ви не хочете це робити самі, можете завантажити готовий файл 
Посилання