Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

tinymce 4: how to create your own file manager?

I am trying to make my own file browser so that I can select the image from my file manage and send it tinymce's image link's field, but I can't find any further information anywhere else on how I can achieve this.

This is the code to open up an new popup on top the insert/ edit image,

file_browser_callback: function(field_name, url, type, win) {

    //tinymce.activeEditor.windowManager.close();
    //console.log(field_name);

    tinymce.activeEditor.windowManager.open({
        title: 'Browse Image',
        file: "yourbrowser.php?field=" + field_name + "&url=" + url,
        width: 450,
        height: 305,
        resizable : "no",
        inline : "yes",
        close_previous : "no",
        buttons: [{
            text: 'Insert',
            classes: 'widget btn primary first abs-layout-item',
            disabled: true,
            onclick: 'close'
        }, {
            text: 'Close',
            onclick: 'close',
            window : win,
            input : field_name
        }]
    });

    return false;
},

This is where I stuck - how can I select an image from my file manager and send it to the image link in insert/ edit image popup?

Below is my entire code so far,

$(document).ready(function(){

        $('.button').click(function(){

            // @reference: http://www.tinymce.com/wiki.php/api4:method.tinymce.remove#
            if(tinyMCE.editors.length > 0) {

                // Remove all editors bound to textareas
                //tinymce.remove('textarea');

                // Remove all editors
                tinymce.remove();
            }

            $('.content').load('full.html', function() {

                if(tinyMCE.editors.length == 0) {

                    tinymce.init({
                        //selector: "textarea",
                        mode : "textareas",
                        editor_selector : "mce-customised",
                        editor_deselector : "not-editor",
                        theme: "modern",
                        plugins: [
                            "advlist autolink lists link image charmap print preview hr anchor pagebreak",
                            "searchreplace wordcount visualblocks visualchars code fullscreen",
                            "insertdatetime media nonbreaking save table contextmenu directionality",
                            "emoticons template paste textcolor"
                        ],
                        toolbar1: "insertfile undo redo | styleselect | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image",
                        toolbar2: "print preview media | forecolor backcolor emoticons",
                        image_advtab: true,

                        file_browser_callback: function(field_name, url, type, win) {

                            //tinymce.activeEditor.windowManager.close();
                            //console.log(field_name);

                            tinymce.activeEditor.windowManager.open({
                                title: 'Browse Image',
                                file: "yourbrowser.php?field=" + field_name + "&url=" + url,
                                width: 450,
                                height: 305,
                                resizable : "no",
                                inline : "yes",
                                close_previous : "no",
                                buttons: [{
                                    text: 'Insert',
                                    classes: 'widget btn primary first abs-layout-item',
                                    disabled: true,
                                    onclick: 'close'
                                }, {
                                    text: 'Close',
                                    onclick: 'close',
                                    window : win,
                                    input : field_name
                                }]
                            });

                            return false;
                        },


                        // Specifying an Absolute Image Path
                        document_base_url : "http://localhost/test/2013/js/tinymce/tinymce_4.0.2/",
                        relative_urls : false,
                        remove_script_host : false,


                        image_list: "image_list.php",
                        link_list: "link_list.php"
                    });

                    $('.button-submit').submit_form();
                }

            });

            return false;
        });

    });

The test site.

Or, do you know any good file mananger plugin that works with tinymce?

like image 500
Run Avatar asked Jul 30 '13 19:07

Run


People also ask

How do you add a custom plugin to TinyMCE?

Using custom plugins with TinyMCE Copy code into plugins folder: Copy the entry point file (and any other files) into the plugins folder of the distributed TinyMCE code. The plugin can then be used by including it in the list of plugins specified by the plugins option.

Is TinyMCE free for commercial use?

Is TinyMCE free? Yes. The TinyMCE core editor is free to use for commercial and noncommercial purposes.


1 Answers

Maybe you should find usefull info here : Configuration:file_browser_callback

win.document.getElementById(field_name).value = 'my browser value';

and here : tinymce forum

like image 105
CharlyBrok Avatar answered Oct 10 '22 14:10

CharlyBrok