(function() { tinymce.PluginManager.add('vbo-shortcodes', function(editor, url) { // add Button to Visual Editor Toolbar editor.addButton('vbo-shortcodes', { title: 'VikBooking Shortcodes List', cmd: 'vbo-shortcodes', icon: 'wp_code' }); editor.addCommand('vbo-shortcodes', function() { openVikBookingShortcodes(editor); }); }); })(); var shortcodes_editor = null; function openVikBookingShortcodes(editor) { shortcodes_editor = editor; var html = ''; for (var group in VIKBOOKING_SHORTCODES) { html += '
'; html += '
' + group + '
'; html += '
'; for (var i = 0; i < VIKBOOKING_SHORTCODES[group].length; i++) { var row = VIKBOOKING_SHORTCODES[group][i]; html += '
'; html += '
' + row.name + '
'; html += '
'; html += 'Post ID: ' + row.post_id + ''; html += 'Created On: ' + row.createdon + ''; html += '
'; html += '
'; } html += '
'; } jQuery('body').append( '
\n'+ '\n' ); jQuery('#vbo-shortcodes-backdrop').on('click', function() { dismissVikBookingShortcodes(); }); } function dismissVikBookingShortcodes() { jQuery('#vbo-shortcodes-backdrop, #vbo-shortcodes-wrap').remove(); } function toggleVikBookingShortcode(link) { var next = jQuery(link).parent().next(); var show = next.is(':visible') ? false : true; jQuery('.shortcodes-container').slideUp(); if (show) { next.slideDown(); } } function selectVikBookingShortcode(record) { jQuery('.shortcode-record').removeClass('selected'); jQuery(record).addClass('selected'); jQuery('#vbo-tinymce-update button').prop('disabled', false); } function putVikBookingShortcode() { var shortcode = jQuery('.shortcode-record.selected').data('code'); shortcodes_editor.execCommand('mceReplaceContent', false, shortcode); dismissVikBookingShortcodes(); }