/* global tinymce */ ( function () { tinymce.PluginManager.add( 'sp_shortcodes_button', function( editor, url ) { var ed = tinymce.activeEditor; var groups = ed.getLang( 'sportspress.shortcodes' ).split("]"); var menu = new Array(); groups.forEach(function(g) { if ( "" == g ) return; var p = g.split("["); var label = p.shift(); var variations = p.shift(); var shortcodes = typeof variations!== 'undefined' ? variations.split("|") : []; var submenu = new Array(); shortcodes.forEach(function(s) { submenu.push({ text: ed.getLang( 'sportspress.' + s ), onclick: function() { // triggers the thickbox var width = jQuery(window).width(), H = jQuery(window).height(), W = ( 720 < width ) ? 720 : width; W = W - 80; H = H - 84; tb_show( ed.getLang( 'sportspress.' + label ) + ' - ' + ed.getLang( 'sportspress.' + s ), 'admin-ajax.php?action=sportspress_' + label + '_' + s + '_shortcode&width=' + W + '&height=' + H ); } }); }); menu.push({ text: ed.getLang( 'sportspress.' + label ), menu: submenu }); }); editor.addButton( 'sp_shortcodes_button', { title: ed.getLang('sportspress.insert'), text: false, icon: false, type: 'menubutton', menu: menu }); }); })();