(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 += '
';
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();
}