TinyMCE WYSIWYG Редактор - Загрузить - PullRequest
0 голосов
/ 06 марта 2020

В настоящее время я использую TinyMCE WYSIWYG Editor на веб-сайте. Все функции работают хорошо, как форматирование или загрузка изображений. Теперь я хотел бы загрузить видео или другие файлы!

Пункт меню для мультимедиа не содержит функцию загрузки - как я могу разработать эту функцию самостоятельно или есть возможность конфигурации? enter image description here

Моя текущая конфигурация выглядит следующим образом:

    tinymce.init({
    selector: 'textarea#content',
    images_upload_url: "/api/v1/Upload/Image",
    plugins: 'print preview searchreplace autolink directionality visualblocks visualchars fullscreen image link media template codesample table charmap hr pagebreak nonbreaking anchor toc insertdatetime advlist lists wordcount imagetools textpattern help',
    toolbar: 'formatselect | bold italic strikethrough forecolor backcolor permanentpen formatpainter | link image media | alignleft aligncenter alignright alignjustify  | numlist bullist outdent indent | removeformat | addcomment',
    media_live_embeds: true,
    file_picker_types: 'file image media',
    file_browser_callback_types: 'file image media',
    file_picker_callback: function (cb, value, meta) {


        if (meta.filetype == 'file') {

        }

        if (meta.filetype == 'image') {
            var input = document.createElement('input');
            input.setAttribute('type', 'file');
            input.setAttribute('accept', 'image/*');


            input.onchange = function () {
                var file = this.files[0];

                var reader = new FileReader();
                reader.onload = function () {

                    var id = file.name.split(".")[0];
                    var blobCache = tinymce.activeEditor.editorUpload.blobCache;
                    var base64 = reader.result.split(',')[1];
                    var blobInfo = blobCache.create(id, file, base64);
                    blobCache.add(blobInfo);


                    cb(blobInfo.blobUri(), { title: file.name });
                };
                reader.readAsDataURL(file);
            };
            input.click();
        }

        if (meta.filetype == 'media') {
            var input = document.createElement('input');
            input.setAttribute('type', 'file');
            input.setAttribute('accept', 'media/*');


            input.onchange = function () {
                var file = this.files[0];

                var reader = new FileReader();
                reader.onload = function () {

                    var id = file.name;
                    var blobCache = tinymce.activeEditor.editorUpload.blobCache;
                    var base64 = reader.result.split(',')[1];
                    var blobInfo = blobCache.create(id, file, base64);
                    blobCache.add(blobInfo);
                    cb(blobInfo.blobUri(), { title: file.name });
                };
                reader.readAsDataURL(file);
            };
            input.click();
        }
    },
    automatic_uploads: true,
    external_media_list_url: "/js/myexternallist.js",
    image_list: "/api/v1/Upload/Images",
    color_cols: '5',
    media_poster: true,
    media_alt_source: true,
    height: 600,
    language: 'de',
    setup: function (editor) {
        editor.on('change',
            function () {
                editor.save();
            });
    }
});

}

Мне нужна только возможность загрузки видео. Может, кто-то заставил его бежать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...