diff options
Diffstat (limited to 'librevideojs/js/mce-button.js')
-rw-r--r-- | librevideojs/js/mce-button.js | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/librevideojs/js/mce-button.js b/librevideojs/js/mce-button.js new file mode 100644 index 0000000..76a2418 --- /dev/null +++ b/librevideojs/js/mce-button.js @@ -0,0 +1,107 @@ +/*! + * @source: + * + * + * @licstart The following is the entire license notice for the + * JavaScript code in this page. + * + * Copyleft 2016 Jorge Maldonado + * + * The JavaScript code in this page is free software: you can + * redistribute it and/or modify it under the terms of the GNU + * General Public License (GNU GPL) as published by the Free Software + * Foundation, either version 3 of the License, or (at your option) + * any later version. The code is distributed WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. + * + * As additional permission under GNU GPL version 3 section 7, you + * may distribute non-source (e.g., minimized or compacted) forms of + * that code without the copy of the GNU GPL normally required by + * section 4, provided you include this license notice and a URL + * through which recipients can access the Corresponding Source. + * + * @licend The above is the entire license notice + * for the JavaScript code in this page. + * + */ +/** + * + */ +(function() { + tinymce.PluginManager.add('bs3_panel', function(editor, url) { + var sh_tag = 'librevideojs_video'; + + //add popup + editor.addCommand('bs3_panel_popup', function(ui, v) { + //setup defaults + var url = ''; + if (v.url) + url = v.url; + var code = 'webm'; + if (v.code) + code = v.code; + var content = ''; + if (v.content) + content = v.content; + + editor.windowManager.open( { + title: 'LibreVideoJS - Inserción de vídeo', + body: [ + { + type: 'textbox', + name: 'url', + label: 'URL', + value: url, + tooltip: 'Inserta la URL del vídeo' + }, + { + type: 'listbox', + name: 'code', + label: 'Formato', + value: code, + 'values': [ + {text: 'webm', value: 'webm'}, + {text: 'ogv', value: 'ogg'}, + {text: 'mp4', value: 'mp4'} + ], + tooltip: 'Selecciona el formato del vídeo' + }, + { + type: 'textbox', + name: 'content', + label: 'Extra', + value: content, + multiline: true, + minWidth: 300, + minHeight: 100 + } + ], + onsubmit: function( e ) { + var shortcode_str = '[' + sh_tag + ' code="'+e.data.code+'"'; + //check for url + if (typeof e.data.url != 'undefined' && e.data.url.length) + shortcode_str += ' url="' + e.data.url + '"'; + + //add panel content + shortcode_str += ' ' + e.data.content + ']'; + //insert shortcode to tinymce + editor.insertContent( shortcode_str); + } + }); + }); + + //add button + editor.addButton('bs3_panel', { + icon: 'bs3_panel', + tooltip: 'LibreVideoJS', + onclick: function() { + editor.execCommand('bs3_panel_popup','',{ + url : '', + code : 'webm', + content: '' + }); + } + }); + }); +})(); |