jQuery(function($) { var demo_confirm = MTDI_JSObject.demo_confirm, //Are you sure to import demo content ? AjaxUrl = MTDI_JSObject.ajaxurl, _wpnonce = MTDI_JSObject._wpnonce, plugin_installing = MTDI_JSObject.plugin_installing, //Installing importing_demo = MTDI_JSObject.importing_demo, //Importing plugin_activated = MTDI_JSObject.plugin_activated, //Activated activating_installing = MTDI_JSObject.activating_installing, //Installing & Activating plugin_activating = MTDI_JSObject.plugin_activating; //Activating var isTimeout, isLoaded; $('.mtdi-demo-import').on('click', function(e) { e.preventDefault(); var el = $(this); $import_true = confirm( demo_confirm ); if ( $import_true == false ) { return; } el.addClass( 'updating-message' ); var selected_demo = el.data( 'slug' ); // Get import data $.ajax({ method: "POST", url: AjaxUrl, data: ({ 'action': 'mtdi_ajax_onclick_import_button', 'plugin_slug': selected_demo, '_wpnonce': _wpnonce, }), success: function(response) { $('#mtdi-demo-popup-wrap').addClass('mtdi-popup-show'); $('#mtdi-demo-popup-wrap').html(response); $(this).removeClass('updating-message'); function success() { if (isTimeout) { return; } $('#loadingMessage').hide(); isLoaded = true; }; setTimeout(function() { if (isLoaded) { return; } $('#loadingMessage').hide(); $('iframe').css('display', 'inline-block'); $('iframe').show(); isTimeout = true; }, 2000); } }); }); $('body').on('click', '.mtdi-demo-popup-close', function(e) { e.preventDefault(); $('#mtdi-demo-popup-wrap').removeClass('mtdi-popup-show'); $('#mtdi-demo-popup-wrap').html(''); $('.mtdi-demo-import').removeClass('updating-message'); }); $(document).on('click', '.mtdi-install-setup', function(e) { var _this = $(this); var $target = $(e.target); var selected_slug = $(this).data('slug'); var pluginLists = $('#hidden_plugin_lists-' + selected_slug).val(); e.preventDefault(); if ($target.hasClass('disabled') || $target.hasClass('updating-message')) { return; } processImport($target, pluginLists, _this); wp.updates.maybeRequestFilesystemCredentials(e); }); $(document).on('click', '.mtdi-demo-import-step', function(e) { var _this = $(this); var $target = $(e.target); var selected_name = $(this).data('name'); var selected_slug = $(this).data('slug'); var execution_time = $(this).data( 'execution' ); processDemoImport(selected_slug, selected_name, execution_time); }); var json = new Array(); processDemoImport = function(selected_slug, selected_name, execution_time) { $.ajax({ method: "POST", url: AjaxUrl, dataType: "json", data: ({ 'action': 'mtdi_import_demo', 'plugin_slug': selected_slug, 'execution_time': execution_time, '_wpnonce': _wpnonce, }), beforeSend: function() { $('.mtdi-demo-import-step').addClass('updating-message').text(importing_demo); }, success: function(response) { if (response.success) { $('.mtdi-demo-import-step').removeClass('updating-message'); $('.mtdi-demo-import-step').html(''); $('.mtdi-demo-import-step').addClass('imported-success'); $('.imported-success').removeClass('demo-import'); $('.imported-success').attr('href', response.data.previewUrl); $('.imported-success').attr('target', '_blank'); $('.imported-success').html('Visit Site'); $( '.mtdi-customize-button' ).show(); $('.imported-success').removeClass('mtdi-demo-import-step'); // popup demo import success message popup_demo_import_success_meesage(selected_name); } else { $('.mtdi-demo-import-step').removeClass('updating-message'); $('.demo-import-actions').append('

' + response.errorMessage + '

'); $('.mtdi-demo-import-step').addClass('error-imported'); } } }); }; processImport = function($target, pluginLists, _this) { $(document).trigger('wp-plugin-bulk-install', pluginLists); // Find all the plugins which are required. pluginLists = JSON.parse(pluginLists); var count = Object.keys(pluginLists).length; var i = 1; var numItems = $('.button.activated').length; installPlugin( pluginLists ); }; installPlugin = function( pluginLists ) { var uninstalledContainer = $( '.mtdi-install-plugin' ); var unactivatedContainer = $( '.mtdi-activate-now' ); if( uninstalledContainer.length || unactivatedContainer.length ) { if( uninstalledContainer.length ) { var SinglePluginSlug = uninstalledContainer.data( 'slug' ); var SinglePluginName = uninstalledContainer.data( 'name' ); var SinglePluginInit = uninstalledContainer.data( 'init' ); var SinglePluginInstall = uninstalledContainer.data( 'install' ); var selfClass = 'mtdi-install-plugin'; } else { var SinglePluginSlug = unactivatedContainer.data( 'slug' ); var SinglePluginName = unactivatedContainer.data( 'name' ); var SinglePluginInit = unactivatedContainer.data( 'init' ); var selfClass = 'mtdi-activate-now'; } var ajaxData; ajaxData = { 'action': 'mtdi_requried_plugin_install', 'plugin_slug': SinglePluginSlug, //slug 'plugin_init': SinglePluginInit, 'plugin_name': SinglePluginName, 'pluginList': pluginLists, '_wpnonce': _wpnonce, } if( typeof SinglePluginInstall != "undefined" ) { ajaxData.install = SinglePluginInstall; } $.ajax({ method: "POST", url: AjaxUrl, data: ajaxData, beforeSend: function() { console.log( 'Installing ' + SinglePluginName ); var button_text = $('.mtdi-' + SinglePluginSlug).hasClass('mtdi-activate-now') ? plugin_activating : plugin_installing; $('.mtdi-' + SinglePluginSlug).addClass('updating-message').text(button_text); $('.mtdi-install-setup').addClass('updating-message').text(activating_installing); }, success: function(response) { if (response.success) { console.log( 'Installed ' + SinglePluginName ); $('.mtdi-' + SinglePluginSlug).removeClass( selfClass ).removeClass('updating-message').addClass('disabled updated-message activated') .text(plugin_activated); } else { $('.mtdi-' + SinglePluginSlug).removeClass( selfClass ).removeClass('updating-message').addClass('disabled updated-message activated') .text(plugin_activated); $('.demo-import-actions').append('

' + response.errorMessage + '

'); } }, complete: function( xhr,status ) { installPlugin( pluginLists ); } }); } else { $('.mtdi-install-setup').hide().removeClass('updating-message'); $('.mtdi-demo-import-step').show(); return; } } $( 'body' ).on( 'click', '.mtdi-responsive-view button', function() { $( this ).siblings().removeClass( 'active' ); $( this ).addClass( 'active' ); var device = $( this ).data( "device" ); if( device == "tablet" ) { var width = '720px'; var height = '1080px'; } else if ( device == "mobile" ) { var width = '320px'; var height = '480px'; } else { var width = '100%'; var height = '100%'; } $( '.theme-screenshots1 iframe' ).animate({width: width, height: height}, 500 ); }); /** * * Function handling demo import success message popup * */ function popup_demo_import_success_meesage(selected_name) { var container = $( "#demo-import-success-note-wrapper" ), closeButton = container.find( ".mtdi-note-close" ), demoNameButton = container.find( ".demo-name" ); container.show(); demoNameButton.html( selected_name ); closeButton.on( "click", function() { var _this = $( this ); _this.parent( "#demo-import-success-note-wrapper" ).hide(); }); } });