' + data + '
'; if (typeof data == 'object') { var markup = '' + JSON.stringify(data) + '
'; } var selector = $('.ast-importing-wrap'); if ($('.current-importing-status-title').length) { selector = $('.current-importing-status-title'); } if (append) { selector.append(markup); } else { selector.html(markup); } }, /** * Binds events for the Astra Sites. * * @since 1.0.0 * @access private * @method _bind */ _bind: function () { $(window).on('resize scroll', AstraSitesAdmin._load_large_images); $('.astra-sites__category-filter-anchor, .astra-sites__category-filter-items').hover(function () { AstraSitesAdmin.mouseLocation = true; }, function () { AstraSitesAdmin.mouseLocation = false; }); $("body").mouseup(function () { if (!AstraSitesAdmin.mouseLocation) AstraSitesAdmin._closeFilter(); }); // Change page builder. $(document).on('click', '.nav-tab-wrapper .page-builders li', AstraSitesAdmin._ajax_change_page_builder); $(document).on('click', '#astra-sites-welcome-form .page-builders li', AstraSitesAdmin._change_page_builder); // Open & Close Popup. $(document).on('click', '.site-import-cancel, .astra-sites-result-preview .close, .astra-sites-popup .close', AstraSitesAdmin._close_popup); $(document).on('click', '.astra-sites-popup .overlay, .astra-sites-result-preview .overlay', AstraSitesAdmin._close_popup_by_overlay); $(document).on('click', '.ast-sites__filter-wrap-checkbox, .ast-sites__filter-wrap', AstraSitesAdmin._filterClick); // Page. $(document).on('click', '.site-import-layout-button', AstraSitesAdmin.show_page_popup_from_sites); $(document).on('click', '#astra-sites .astra-sites-previewing-page .theme-screenshot, #astra-sites .astra-sites-previewing-page .theme-name', AstraSitesAdmin.show_page_popup_from_search); $(document).on('click', '.astra-sites-page-import-popup .site-install-site-button, .preview-page-from-search-result .site-install-site-button', AstraSitesAdmin.import_page_process); $(document).on('astra-sites-after-site-pages-required-plugins', AstraSitesAdmin._page_api_call); // Site reset warning. $(document).on('click', '.astra-sites-reset-data .checkbox', AstraSitesAdmin._toggle_reset_notice); // Theme Activation warning. $(document).on('click', '.astra-sites-theme-activation .checkbox', AstraSitesAdmin._toggle_theme_notice); $(document).on('wp-theme-install-success', AstraSitesAdmin._activateTheme); // Site. $(document).on('click', '.site-import-site-button', AstraSitesAdmin._show_site_popup); $(document).on('click', '.astra-sites-get-agency-bundle-button', AstraSitesAdmin._show_get_agency_bundle_notice); $(document).on('click', '.astra-sites-activate-license-button', AstraSitesAdmin._show_activate_license_notice); $(document).on('click', '.astra-sites-invalid-mini-agency-license-button', AstraSitesAdmin._show_invalid_mini_agency_license); $(document).on('click', '.astra-sites-site-import-popup .site-install-site-button', AstraSitesAdmin._resetData); // Skip. $(document).on('click', '.astra-sites-skip-and-import-step', AstraSitesAdmin._remove_skip_and_import_popup); // Skip & Import. $(document).on('astra-sites-after-astra-sites-required-plugins', AstraSitesAdmin._start_site_import); $(document).on('astra-sites-reset-data', AstraSitesAdmin._backup_before_rest_options); $(document).on('astra-sites-backup-settings-before-reset-done', AstraSitesAdmin._reset_customizer_data); $(document).on('astra-sites-reset-customizer-data-done', AstraSitesAdmin._reset_site_options); $(document).on('astra-sites-reset-site-options-done', AstraSitesAdmin._reset_widgets_data); $(document).on('astra-sites-reset-widgets-data-done', AstraSitesAdmin._reset_terms); $(document).on('astra-sites-delete-terms-done', AstraSitesAdmin._reset_wp_forms); $(document).on('astra-sites-delete-wp-forms-done', AstraSitesAdmin._reset_posts); $(document).on('astra-sites-reset-data-done', AstraSitesAdmin._recheck_backup_options); $(document).on('astra-sites-backup-settings-done', AstraSitesAdmin._startImportCartFlows); $(document).on('astra-sites-import-cartflows-done', AstraSitesAdmin._startImportWPForms); $(document).on('astra-sites-import-wpforms-done', AstraSitesAdmin._importCustomizerSettings); $(document).on('astra-sites-import-customizer-settings-done', AstraSitesAdmin._importXML); $(document).on('astra-sites-import-xml-done', AstraSitesAdmin.import_siteOptions); $(document).on('astra-sites-import-options-done', AstraSitesAdmin._importWidgets); $(document).on('astra-sites-import-widgets-done', AstraSitesAdmin._importEnd); // Try again. $(document).on('click', '.ast-try-again', AstraSitesAdmin.tryAgain ); $(document).on('click', '.astra-sites__category-filter-anchor', AstraSitesAdmin._toggleFilter); // Tooltip. $(document).on('click', '.astra-sites-tooltip-icon', AstraSitesAdmin._toggle_tooltip); // Plugin install & activate. $(document).on('wp-plugin-installing', AstraSitesAdmin._pluginInstalling); $(document).on('wp-plugin-install-error', AstraSitesAdmin._installError); $(document).on('wp-plugin-install-success', AstraSitesAdmin._installSuccess); $(document).on('click', '#astra-sites .astra-sites-previewing-site .theme-screenshot, #astra-sites .astra-sites-previewing-site .theme-name', AstraSitesAdmin._show_pages); $(document).on('click', '#single-pages .site-single', AstraSitesAdmin._change_site_preview_screenshot); $(document).on('click', '.astra-sites-show-favorite-button', AstraSitesAdmin._show_favorite); $(document).on('click', '.favorite-action-wrap', AstraSitesAdmin._toggle_favorite); $(document).on('click', '.astra-previewing-single-pages .back-to-layout', AstraSitesAdmin._go_back); $(document).on('click', '.astra-sites-showing-favorites .back-to-layout, .astra-sites-no-search-result .back-to-layout, .logo, .astra-sites-back', AstraSitesAdmin._show_sites); $(document).on('keydown', AstraSitesAdmin._next_and_previous_sites); $(document).on('click', '.astra-sites-site-category a', AstraSitesAdmin._filterSites); $(document).on('click', '.astra-sites-sync-library-button', AstraSitesAdmin._sync_library); $(document).on('click', '.astra-sites-sync-library-message .notice-dismiss', AstraSitesAdmin._sync_library_complete); $(document).on('click', '.page-builder-icon', AstraSitesAdmin._toggle_page_builder_list); $(document).on('click', '.showing-page-builders #wpbody-content', AstraSitesAdmin._close_page_builder_list); $(document).on('keyup input', '#wp-filter-search-input', AstraSitesAdmin._search); $(document).on('keyup', '#wp-filter-search-input', _.debounce(AstraSitesAdmin._searchPost, 1500)); $(document).on('heartbeat-send', AstraSitesAdmin._sendHeartbeat); $(document).on('heartbeat-tick', AstraSitesAdmin._heartbeatDone); $(document).on('click', '.ui-autocomplete .ui-menu-item', AstraSitesAdmin._show_search_term); $(document).on('click', '.button-subscription-submit', AstraSitesAdmin._subscribe); $(document).on('click', '.button-subscription-skip', AstraSitesAdmin._hide_subscription_popup); $(document).on('focusout change', '.subscription-input', AstraSitesAdmin.validate_single_field); $(document).on('click input', '.subscription-input', AstraSitesAdmin._animate_fields); $(document).on('click', '.astra-sites-advanced-options-heading', AstraSitesAdmin.toggle_advanced); $(window).on('scroll', AstraSitesAdmin._stick_header); $(document).on('wp-collapse-menu', AstraSitesAdmin._manage_wp_collapse_menu); $(document).on('astra-sites-added-pages', AstraSitesAdmin._stick_header); $(document).on('astra-sites-added-pages', AstraSitesAdmin._manage_wp_collapse_menu); }, /** * Try again for import * @param {*} event */ tryAgain: function( event ) { event.preventDefault(); AstraSitesAdmin.delay_in_request = true; $( '.site-import-site-button' ).trigger( 'click' ); }, /** * Stick Header */ _stick_header: function () { if ($(window).outerWidth() > 768 && $(window).scrollTop() > AstraSitesAdmin.header_stick_after) { AstraSitesAdmin.header.addClass('stick').stop().css({ 'top': AstraSitesAdmin.header_gutter, 'margin-left': AstraSitesAdmin.wpcontent_left_margin, }); } else { AstraSitesAdmin.header.removeClass('stick').stop().css({ 'top': '', }); } }, /** * Manage WP COllapse Menu */ _manage_wp_collapse_menu: function (event, state) { AstraSitesAdmin.wpcontent_left_margin = $('#wpcontent').css('margin-left'); if (AstraSitesAdmin.header.hasClass('stick')) { AstraSitesAdmin.header.css('margin-left', AstraSitesAdmin.wpcontent_left_margin); } $('.single-site-footer').css('margin-left', AstraSitesAdmin.wpcontent_left_margin); $('.single-site-pages-wrap').css('margin-right', AstraSitesAdmin.wpcontent_left_margin); }, toggle_advanced: function (event) { const elScope = $('.astra-sites-advanced-options-heading span') if (elScope.hasClass('dashicons-arrow-right-alt2')) { elScope.removeClass('dashicons-arrow-right-alt2').addClass('dashicons-arrow-down-alt2'); } else { elScope.removeClass('dashicons-arrow-down-alt2').addClass('dashicons-arrow-right-alt2'); } $('.astra-sites-advanced-options').toggle(); }, _animate_fields: function (event) { event.preventDefault(); event.stopPropagation(); var parentWrapper = $(this).parents('.subscription-field-wrap'); parentWrapper.addClass('subscription-anim'); }, validate_single_field: function (event) { event.preventDefault(); event.stopPropagation(); AstraSitesAdmin._validate_field(event.target); }, _validate_field: function (target) { var field = $(target); var fieldValue = field.val() || ''; var parentWrapper = $(target).parents('.subscription-field-wrap'); var fieldStatus = fieldValue.length ? true : false; if ((field.hasClass('subscription-input-email') && false === AstraSitesAdmin.isValidEmail(fieldValue))) { fieldStatus = false; } if (fieldStatus) { parentWrapper .removeClass('subscription-error') .addClass('subscription-success'); } else { parentWrapper .removeClass('subscription-success subscription-anim') .addClass('subscription-error'); if (field.hasClass('subscription-input-email') && fieldValue.length) { parentWrapper .addClass('subscription-anim') } } }, _hide_subscription_popup: function (event) { $('.subscription-popup').hide(); $('.astra-sites-result-preview .default').show(); AstraSitesAdmin.subscribe_status = true; AstraSitesAdmin.subscribe_skiped = true; if ('astra-sites' === AstraSitesAdmin.action_slug) { $('.ast-importing-wrap').show(); $('.astra-sites-result-preview').removeClass('astra-sites-subscription-popup'); $('.ast-actioms-wrap .button').hide(); $('.ast-actioms-wrap .site-install-site-button').show(); $('.ast-actioms-wrap .site-import-cancel').show(); $('.astra-sites-result-preview .heading h3').html(astraSitesVars.headings.site_import); if (true === AstraSitesAdmin.site_import_status) { AstraSitesAdmin.import_complete(); } } else { $('.astra-sites-result-preview .heading h3').html(astraSitesVars.headings.page_import); if (true === AstraSitesAdmin.page_import_status) { AstraSitesAdmin.page_import_complete(); } } if (event && event.target.classList.value == 'button-subscription-skip') { astraSitesVars.subscribed = ''; AstraSitesAdmin.subscription_form_submitted = ''; } else { astraSitesVars.subscribed = 'yes'; AstraSitesAdmin.subscription_form_submitted = 'yes'; } }, _subscribe: function (event) { event.preventDefault(); var submit_button = $(this); if (submit_button.hasClass('submitting')) { return; } var first_name_field = $('.subscription-input-name[name="first_name"]'); var email_field = $('.subscription-input-email[name="email"]'); var user_type_field = $('.subscription-input-wp-user-type[name="wp_user_type"]'); var build_for_field = $('.subscription-input-build-website-for[name="build_website_for"]'); var subscription_first_name = first_name_field.val() || ''; var subscription_email = email_field.val() || ''; var subscription_user_type = user_type_field.val() || ''; var subscription_build_for = build_for_field.val() || ''; AstraSitesAdmin._validate_field(first_name_field); AstraSitesAdmin._validate_field(email_field); if ($('#astra-sites-subscription-form-two').length) { AstraSitesAdmin._validate_field(user_type_field); AstraSitesAdmin._validate_field(build_for_field); } if ($('.subscription-field-wrap').hasClass('subscription-error')) { return; } submit_button.addClass('submitting'); var subscription_fields = { EMAIL: subscription_email, FIRSTNAME: subscription_first_name, PAGE_BUILDER: astraSitesVars.default_page_builder_data.name, WP_USER_TYPE: subscription_user_type, BUILD_WEBSITE_FOR: subscription_build_for, }; $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-update-subscription', _ajax_nonce: astraSitesVars._ajax_nonce, data: JSON.stringify(subscription_fields), }, beforeSend: function () { console.groupCollapsed('Email Subscription'); }, }) .done(function (response) { AstraSitesAdmin._log(response); submit_button .text(astraSitesVars.subscriptionSuccessMessage) .removeClass('submitting') .addClass('submitted') .find('.dashicons') .removeClass('dashicons-update') .addClass('dashicons-yes') setTimeout(function () { AstraSitesAdmin._hide_subscription_popup(); }, 5000); console.groupEnd(); }); }, isValidEmail: function (eMail) { if (/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/.test(eMail)) { return true; } return false; }, _heartbeatDone: function (e, data) { // Check for our data, and use it. if (!data['ast-sites-search-terms']) { return; } AstraSitesAdmin.search_terms = []; AstraSitesAdmin.search_terms_with_count = []; }, _sendHeartbeat: function (e, data) { // Add additional data to Heartbeat data. if (AstraSitesAdmin.search_terms.length > 0) { data['ast-sites-search-terms'] = AstraSitesAdmin.search_terms_with_count; data['ast-sites-builder'] = astraSitesVars.default_page_builder; } }, _searchPost: function (e) { var term = $(this).val().toLowerCase(); // Skip blank words and words smaller than 3 characters. if ('' === term || term.length < 3 ) { return; } if (!AstraSitesAdmin.search_terms.includes(term)) { let count = $( '#astra-sites .ast-sites__search-wrap > div' ).length; AstraSitesAdmin.search_terms.push(term); AstraSitesAdmin.search_terms_with_count.push({'term': term, 'count': count }); } }, _toggleFilter: function (e) { var items = $('.astra-sites__category-filter-items'); if (items.hasClass('visible')) { items.removeClass('visible'); items.hide(); } else { items.addClass('visible'); items.show(); } }, _closeFilter: function (e) { var items = $('.astra-sites__category-filter-items'); items.removeClass('visible'); items.hide(); }, _filterClick: function (e) { AstraSitesAdmin.filter_array = []; if ($(this).hasClass('ast-sites__filter-wrap')) { $('.astra-sites__category-filter-anchor').attr('data-slug', $(this).data('slug')); $('.astra-sites__category-filter-items').find('.ast-sites__filter-wrap').removeClass('category-active'); $(this).addClass('category-active'); $('.astra-sites__category-filter-anchor').text($(this).text()); $('.astra-sites__category-filter-anchor').trigger('click'); $('#wp-filter-search-input').val(''); if ($('.astra-sites-show-favorite-button').hasClass('active')) { $('.astra-sites-show-favorite-button').removeClass('active'); $('body').removeClass('astra-sites-showing-favorites'); AstraSitesAdmin._clean_url_params('favorites'); } } var $filter_name = $('.astra-sites__category-filter-anchor').attr('data-slug'); if ('' != $filter_name) { AstraSitesAdmin.filter_array.push($filter_name); } if ($('.ast-sites__filter-wrap-checkbox input[name=ast-sites-radio]:checked').length) { $('.ast-sites__filter-wrap-checkbox input[name=ast-sites-radio]').removeClass('active'); $('.ast-sites__filter-wrap-checkbox input[name=ast-sites-radio]:checked').addClass('active'); } var $filter_type = $('.ast-sites__filter-wrap-checkbox input[name=ast-sites-radio]:checked').val(); if ('' != $filter_type) { AstraSitesAdmin.filter_array.push($filter_type); } AstraSitesAdmin._closeFilter(); $('#wp-filter-search-input').trigger('keyup'); }, _show_search_term: function () { var search_term = $(this).text() || ''; $('#wp-filter-search-input').val(search_term); $('#wp-filter-search-input').trigger('keyup'); }, _search: function (event) { var search_input = $('#wp-filter-search-input'), search_term = $.trim(search_input.val()) || ''; if (13 === event.keyCode) { $('.astra-sites-autocomplete-result .ui-autocomplete').hide(); $('.search-form').removeClass('searching'); $('#astra-sites-admin').removeClass('searching'); } $('body').removeClass('astra-sites-no-search-result'); var searchTemplateFlag = false, items = items; AstraSitesAdmin.close_pages_popup(); if (search_term.length) { search_input.addClass('has-input'); $('#astra-sites-admin').addClass('searching'); searchTemplateFlag = true; } else { search_input.removeClass('has-input'); $('#astra-sites-admin').removeClass('searching'); } if( ! items ) { var filter_category = $('.astra-sites__category-filter-anchor').attr('data-slug') || ''; var filter_type = $('.ast-sites__filter-wrap-checkbox input[name=ast-sites-radio]:checked').val() || ''; items = AstraSitesAdmin.get_sites_by_search_term(search_term, filter_type, filter_category); AstraSitesAdmin.autocompleteTags = items.tags; AstraSitesAdmin._autocomplete(); } if ( ( Object.keys( items.pages ).length || Object.keys( items.sites ).length || Object.keys( items.related ).length ) && !AstraSitesAdmin.isEmpty(items)) { if ( searchTemplateFlag) { AstraSitesAdmin.add_sites_after_search(items); } else { if( items.sites ) { items = Object.assign( items.sites, items.related ); } AstraSitesAdmin.add_sites(items); } } else { if (search_term.length) { $('body').addClass('astra-sites-no-search-result'); } $('#astra-sites').html(wp.template('astra-sites-no-sites')); } }, /** * Change URL */ _changeAndSetURL: function (url_params) { var current_url = window.location.href; var current_url_separator = (window.location.href.indexOf("?") === -1) ? "?" : "&"; var new_url = current_url + current_url_separator + decodeURIComponent($.param(url_params)); AstraSitesAdmin._changeURL(new_url); }, /** * Clean the URL. * * @param string url URL string. * @return string Change the current URL. */ _changeURL: function (url) { History.pushState(null, astraSitesVars.whiteLabelName, url); }, /** * Get URL param. */ _getParamFromURL: function (name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, "\\$&"); var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, " ")); }, _clean_url_params: function (single_param) { var url_params = AstraSitesAdmin._getQueryStrings(); delete url_params[single_param]; delete url_params['']; // Removed extra empty object. var current_url = window.location.href; var root_url = current_url.substr(0, current_url.indexOf('?')); if ($.isEmptyObject(url_params)) { var new_url = root_url + decodeURIComponent($.param(url_params)); } else { var current_url_separator = (root_url.indexOf("?") === -1) ? "?" : "&"; var new_url = root_url + current_url_separator + decodeURIComponent($.param(url_params)); } AstraSitesAdmin._changeURL(new_url); }, /** * Get query strings. * * @param string string Query string. * @return string Check and return query string. */ _getQueryStrings: function (string) { return (string || document.location.search).replace(/(^\?)/, '').split("&").map(function (n) { return n = n.split("="), this[n[0]] = n[1], this }.bind({}))[0]; }, isEmpty: function (obj) { for (var key in obj) { if (obj.hasOwnProperty(key)) return false; } return true; }, _unescape: function (input_string) { var title = _.unescape(input_string); // @todo check why below character not escape with function _.unescape(); title = title.replace('–', '-'); title = title.replace('’', "'"); return title; }, _unescape_lower: function (input_string) { var input_string = AstraSitesAdmin._unescape(input_string); return input_string.toLowerCase(); }, get_sites_by_search_term: function (search_term, type, category, page_builder) { search_term = search_term.toLowerCase(); let result = { tags: [], sites: {}, pages: {}, related: {}, related_categories: [], }; /** * Get all page builder sites. */ let allSites = Object.assign( {}, astraSitesVars.default_page_builder_sites ); let sites = {}; if (page_builder) { for (let site_id in allSites) { if (allSites[site_id]['astra-site-page-builder'] === page_builder) { sites[site_id] = allSites[site_id]; } } } else { sites = allSites; } /** * Filter sites by site type */ let newSites = {}; if( type ) { for (let site_id in sites) { if (sites[site_id]['astra-sites-type'] === type) { newSites[site_id] = sites[site_id]; } } sites = newSites; } /** * Filter sites by site category */ newSites = {}; if( category ) { for (let site_id in sites) { console.log( sites[site_id]['categories'] ); if ( Object.values( sites[site_id]['categories'] ).includes( category ) ) { newSites[site_id] = sites[site_id]; } } sites = newSites; } /** * Find in sites. * * Add site in tags. * Add site in sites list. */ for (let site_id in sites) { let site = sites[site_id]; /** * Sites */ if (site.title.toLowerCase().includes(search_term)) { /** * Add site title in tag. */ if( ! result.tags.includes( site.title ) ) { result.tags.push(site.title); } /** * Add found sites. */ result.sites[site_id] = site; /** * Add related categories */ Object.values(site.categories).map(site_category=>{ if (!result.related_categories.includes(site_category)) { result.related_categories.push(site_category); } } ); } /** * Pages */ if (Object.keys(site.pages).length) { let pages = site.pages; for (page_id in pages) { if (pages[page_id].title.toLowerCase().includes(search_term)) { /** * Add page */ result.pages[page_id] = pages[page_id]; /** * Add tag */ if( ! result.tags.includes( pages[page_id].title ) ) { result.tags.push(pages[page_id].title); } } } } } /** * Add additionals. */ /** * Filter original tags. */ astraSitesVars.all_site_categories_and_tags.map(cat=>{ if (cat.name.toLowerCase().includes(search_term)) { /** * Add tag in tags list. */ result.tags.push(cat.name); /** * Add parent tag sites into the related list. */ if( astraSitesVars.all_site_categories.length ) { let parent_cat_id = cat.id.toString(); if (parent_cat_id.includes('-')) { parent_cat_id = cat.id.split('-')[0]; } astraSitesVars.all_site_categories.map( site_cat => { if( parent_cat_id == site_cat.id ) { if( ! result.related_categories.includes( site_cat.slug ) ) { result.related_categories.push( site_cat.slug ); } } }); } } } ); /** * Related Sites. */ for (let site_id in sites) { let site = sites[site_id]; Object.values(site.categories).map(site_category=>{ if (!result.sites[site_id] && result.related_categories.includes(site_category)) { result.related[site_id] = site; } } ); } /** * Limit tags. */ if( result.tags ) { result.tags = result.tags.slice(0, 10); } console.log( result ); return result; }, _close_page_builder_list: function (event) { event.preventDefault(); $('body').removeClass('showing-page-builders'); $('.page-builder-icon').removeClass('active'); }, _toggle_page_builder_list: function (event) { event.preventDefault(); $(this).toggleClass('active'); $('body').toggleClass('showing-page-builders'); }, _sync_library_complete: function () { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-update-library-complete', }, }).done(function (response) { AstraSitesAdmin._log(response); console.groupEnd('Update Library Request'); $('.astra-sites-sync-library-message').remove(); }); }, _sync_library_with_ajax: function (is_append) { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-get-sites-request-count', }, beforeSend: function () { console.groupCollapsed('Sync Library'); AstraSitesAdmin._log('Sync Library..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR, 'error'); AstraSitesAdmin._importFailMessage(jqXHR.status + jqXHR.statusText, 'Site Count Request Failed!', jqXHR); console.groupEnd('Sync Library'); }) .done(function (response) { AstraSitesAdmin._log(response); if (response.success) { var total = response.data; AstraSitesAdmin._log(total); for (let i = 1; i <= total; i++) { AstraSitesAjaxQueue.add({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-sites', page_no: i, }, success: function (result) { AstraSitesAdmin._log(result); if (is_append) { if (!AstraSitesAdmin.isEmpty(result.data)) { var template = wp.template('astra-sites-page-builder-sites'); // First fill the placeholders and then append remaining sites. if ($('.placeholder-site').length) { for (site_id in result.data) { if ($('.placeholder-site').length) { $('.placeholder-site').first().remove(); } } if ($('#astra-sites .site-single:not(.placeholder-site)').length) { $('#astra-sites .site-single:not(.placeholder-site)').last().after(template(result.data)); } else { $('#astra-sites').prepend(template(result.data)); } } else { $('#astra-sites').append(template(result.data)); } astraSitesVars.default_page_builder_sites = $.extend({}, astraSitesVars.default_page_builder_sites, result.data); AstraSitesAdmin._load_large_images(); $(document).trigger('astra-sites-added-pages'); } } if (i === total && astraSitesVars.strings.syncCompleteMessage) { console.groupEnd('Sync Library'); $('#wpbody-content').find('.astra-sites-sync-library-message').remove(); var noticeContent = wp.updates.adminNotice({ className: 'notice astra-sites-notice notice-success is-dismissible astra-sites-sync-library-message', message: astraSitesVars.strings.syncCompleteMessage + ' ', }); $('#astra-sites-admin').before(noticeContent); $(document).trigger('wp-updates-notice-added'); $('.astra-sites-sync-library-button').removeClass('updating-message'); } } }); } // Run the AJAX queue. AstraSitesAjaxQueue.run(); } else { AstraSitesAdmin._importFailMessage(response.data, 'Site Count Request Failed!'); } }); // Import all categories and tags. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-all-categories-and-tags', }, beforeSend: function () { console.groupCollapsed('Importing Site Categories and Tags'); AstraSitesAdmin._log('Importing Site Categories and Tags..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + jqXHR.statusText, 'Site Category Import Failed!', jqXHR); console.groupEnd('Importing Site Categories and Tags'); }).done(function (response) { AstraSitesAdmin._log(response); console.groupEnd('Importing Site Categories and Tags'); }); // Import all categories. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-all-categories', }, beforeSend: function () { console.groupCollapsed('Importing Site Categories'); AstraSitesAdmin._log('Importing Site Categories..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + jqXHR.statusText, 'Site Category Import Failed!', jqXHR); console.groupEnd('Importing Site Categories'); }).done(function (response) { AstraSitesAdmin._log(response); console.groupEnd('Importing Site Categories'); }); // Import page builders. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-page-builders', }, beforeSend: function () { console.groupCollapsed('Importing Page Builders'); AstraSitesAdmin._log('Importing Page Builders..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Page Builder Import Failed!', jqXHR); console.groupEnd('Importing Page Builders'); }).done(function (response) { AstraSitesAdmin._log(response); console.groupEnd('Importing Page Builders'); }); // Import Blocks. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-get-blocks-request-count', }, beforeSend: function () { console.groupCollapsed('Updating Blocks'); AstraSitesAdmin._log('Updating Blocks'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR, 'error'); AstraSitesAdmin._importFailMessage(jqXHR.status + jqXHR.statusText, 'Blocks Count Request Failed!', jqXHR); console.groupEnd('Updating Blocks'); }) .done(function (response) { AstraSitesAdmin._log(response); if (response.success) { var total = response.data; AstraSitesAdmin._log(total); for (let i = 1; i <= total; i++) { AstraSitesAjaxQueue.add({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-blocks', page_no: i, }, beforeSend: function () { console.groupCollapsed('Importing Blocks - Page ' + i); AstraSitesAdmin._log('Importing Blocks - Page ' + i); }, success: function (response) { AstraSitesAdmin._log(response); console.groupEnd('Importing Blocks - Page ' + i); } }); } // Run the AJAX queue. AstraSitesAjaxQueue.run(); } else { AstraSitesAdmin._importFailMessage(response.data, 'Blocks Count Request Failed!'); } }); // Import Block Categories. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-import-block-categories', }, beforeSend: function () { console.groupCollapsed('Importing Block Categories'); AstraSitesAdmin._log('Importing Block Categories..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Category Import Failed!', jqXHR); console.groupEnd('Importing Block Categories'); }).done(function (response) { AstraSitesAdmin._log(response); console.groupEnd('Importing Block Categories'); }); AstraSitesAdmin._sync_library_complete(); }, _sync_library: function (event) { event.preventDefault(); var button = $(this); if (button.hasClass('updating-message')) { return; } button.addClass('updating-message'); $('.astra-sites-sync-library-message').remove(); var noticeContent = wp.updates.adminNotice({ className: 'astra-sites-sync-library-message astra-sites-notice notice notice-info', message: astraSitesVars.syncLibraryStart + '', }); $('#astra-sites-admin').before(noticeContent); $(document).trigger('wp-updates-notice-added'); $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-update-library', }, beforeSend: function () { console.groupCollapsed('Update Library Request'); AstraSitesAdmin._log('Updating Library..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Sync Library Failed!', jqXHR); console.groupEnd('Update Library Request'); }) .done(function (response) { console.log(response); if (response.success) { if ('updated' === response.data) { $('#wpbody-content').find('.astra-sites-sync-library-message').remove(); var noticeContent = wp.updates.adminNotice({ className: 'notice astra-sites-notice notice-success is-dismissible astra-sites-sync-library-message', message: astraSitesVars.strings.syncCompleteMessage + ' ', }); $('#astra-sites-admin').before(noticeContent); $(document).trigger('wp-updates-notice-added'); button.removeClass('updating-message'); AstraSitesAdmin._log('Already sync all the sites.'); console.groupEnd('Update Library Request'); } else { AstraSitesAdmin._sync_library_with_ajax(); } } else { $('#wpbody-content').find('.astra-sites-sync-library-message').remove(); var noticeContent = wp.updates.adminNotice({ className: 'notice astra-sites-notice notice-error is-dismissible astra-sites-sync-library-message', message: response.data + ' ', }); $('#astra-sites-admin').before(noticeContent); $(document).trigger('wp-updates-notice-added'); button.removeClass('updating-message'); AstraSitesAdmin._log('Already sync all the sites.'); console.groupEnd('Update Library Request'); } }); }, _filterSites: function (event) { event.preventDefault(); var current_class = $(this).attr('data-group') || ''; $(this).parents('.filter-links').find('a').removeClass('current'); $(this).addClass('current'); var search_term = $(this).text() || ''; if (current_class) { if ($('#astra-sites .astra-theme.' + current_class).length) { $('#wp-filter-search-input').val(search_term); // $('#astra-sites .astra-theme').removeClass('astra-show-site astra-hide-site'); $('#astra-sites .astra-theme').addClass('astra-hide-site'); $('#astra-sites .astra-theme.' + current_class).removeClass('astra-hide-site').addClass('astra-show-site'); } } else { $('#astra-sites .astra-theme').removeClass('astra-hide-site').addClass('astra-show-site'); } $('.filters-wrap-page-categories').removeClass('show'); }, _next_and_previous_sites: function (e) { if (!$('body').hasClass('astra-previewing-single-pages')) { return; } if (e.key === "Escape") { AstraSitesAdmin.close_pages_popup(); return; } switch (e.which) { // Left Key Pressed case 37: if ($('#astra-sites .astra-theme.current').prev().length) { $('#astra-sites .astra-theme.current').prev().addClass('current').siblings().removeClass('current'); var site_id = $('#astra-sites .astra-theme.current').prev().attr('data-site-id') || ''; if (site_id) { AstraSitesAdmin.show_pages_by_site_id(site_id); } } break; // Right Key Pressed case 39: if ($('#astra-sites .astra-theme.current').next().length) { $('#astra-sites .astra-theme.current').next().addClass('current').siblings().removeClass('current'); var site_id = $('#astra-sites .astra-theme.current').next().attr('data-site-id') || ''; if (site_id) { AstraSitesAdmin.show_pages_by_site_id(site_id); } } break; } }, show_pages_by_site_id: function (site_id, page_id) { var sites = astraSitesVars.default_page_builder_sites || []; var data = sites[site_id]; if ('undefined' !== typeof data) { var site_template = wp.template('astra-sites-single-site-preview'); if (!AstraSitesAdmin._getParamFromURL('astra-site')) { var url_params = { 'astra-site': site_id, }; AstraSitesAdmin._changeAndSetURL(url_params); } $('#astra-sites').hide(); $('#site-pages').show().html(site_template(data)).removeClass('brizy elementor beaver-builder gutenberg').addClass(astraSitesVars.default_page_builder); $('body').addClass('astra-previewing-single-pages'); $('#site-pages').attr('data-site-id', site_id); if (AstraSitesAdmin._getParamFromURL('astra-page')) { AstraSitesAdmin._set_preview_screenshot_by_page($('#single-pages .site-single[data-page-id="' + AstraSitesAdmin._getParamFromURL('astra-page') + '"]')); // Has first item? // Then set default screnshot in preview. } else if (page_id && $('#single-pages .site-single[data-page-id="' + page_id + '"]').length) { AstraSitesAdmin._set_preview_screenshot_by_page($('#single-pages .site-single[data-page-id="' + page_id + '"]')); } else if ($('#single-pages .site-single').eq(0).length) { AstraSitesAdmin._set_preview_screenshot_by_page($('#single-pages .site-single').eq(0)); } if (!$('#single-pages .site-single').eq(0).length) { $('.site-import-layout-button').hide(); } $(document).trigger('astra-sites-added-pages'); AstraSitesAdmin._load_large_images(); } }, _show_sites: function (event) { event.preventDefault(); $('.astra-sites-show-favorite-button').removeClass('active'); $('body').removeClass('astra-sites-showing-favorites'); $('body').removeClass('astra-sites-no-search-result'); $('.astra-sites__category-filter-items').find('.ast-sites__filter-wrap').removeClass('category-active'); $('.ast-sites__filter-wrap').first().addClass('category-active'); $('.astra-sites__category-filter-anchor').attr('data-slug', ''); AstraSitesAdmin.filter_array = []; $('.ast-sites__filter-wrap-checkbox input:radio').attr('checked', false); $('.ast-sites__filter-wrap-checkbox input:radio').removeClass('active'); $('#radio-all').trigger('click'); $('#radio-all').addClass('active'); $('.astra-sites__category-filter-anchor').text('All'); AstraSitesAdmin._closeFilter(); $('#wp-filter-search-input').val(''); $('#astra-sites-admin').removeClass('searching'); AstraSitesAdmin.add_sites(astraSitesVars.default_page_builder_sites); AstraSitesAdmin.close_pages_popup(); AstraSitesAdmin._clean_url_params('favorites'); AstraSitesAdmin._load_large_images(); }, /** * Go back to all sites view * * @since 2.0.0 * @return null */ _go_back: function (event) { event.preventDefault(); AstraSitesAdmin._clean_url_params('search'); AstraSitesAdmin._clean_url_params('favorites'); AstraSitesAdmin._clean_url_params('license'); AstraSitesAdmin.close_pages_popup(); AstraSitesAdmin._load_large_images(); }, close_pages_popup: function () { astraSitesVars.cpt_slug = 'astra-sites'; $('#astra-sites').show(); $('#site-pages').hide().html(''); $('body').removeClass('astra-previewing-single-pages'); $('.astra-sites-result-preview').hide(); $('#astra-sites .astra-theme').removeClass('current'); AstraSitesAdmin._clean_url_params('astra-site'); AstraSitesAdmin._clean_url_params('astra-page'); AstraSitesAdmin._clean_url_params('license'); }, _toggle_favorite: function (event) { let is_favorite = $(this).data('favorite'); let parent = $(this).parents('.astra-theme'); let site_id = parent.data('site-id').toString(); let new_array = Array(); parent.toggleClass('is-favorite'); $(this).data('favorite', !is_favorite); if (!is_favorite) { // Add. for (value in astraSitesVars.favorite_data) { new_array.push(astraSitesVars.favorite_data[value]); } new_array.push(site_id); } else { // Remove. for (value in astraSitesVars.favorite_data) { if (site_id != astraSitesVars.favorite_data[value].toString()) { new_array.push(astraSitesVars.favorite_data[value]); } } } astraSitesVars.favorite_data = new_array; // If in favorites preview window and unfavorite the item? if ($('body').hasClass('astra-sites-showing-favorites') && !parent.hasClass('is-favorite')) { // Then remove the favorite item from markup. parent.remove(); // Show Empty Favorite message if there is not item in favorite. if (!$('#astra-sites .astra-theme').length) { $('#astra-sites').html(wp.template('astra-sites-no-favorites')); } } $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', dataType: 'json', data: { action: 'astra-sites-favorite', is_favorite: !is_favorite, site_id: site_id }, beforeSend: function () { console.groupCollapsed('Toggle Favorite'); AstraSitesAdmin._log(!is_favorite); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Favorite/Unfavorite Failed!', jqXHR); console.groupEnd(); }) .done(function (response) { AstraSitesAdmin._log(response); console.groupEnd(); }); }, _show_favorite: function (event) { if (event) { event.preventDefault(); } AstraSitesAdmin.close_pages_popup(); $('.astra-sites__category-filter-items').find('.ast-sites__filter-wrap').removeClass('category-active'); $('.ast-sites__filter-wrap').first().addClass('category-active'); $('.astra-sites__category-filter-anchor').attr('data-slug', ''); AstraSitesAdmin.filter_array = []; $('.ast-sites__filter-wrap-checkbox input:radio').attr('checked', false); $('.ast-sites__filter-wrap-checkbox input:radio').removeClass('active'); $('#radio-all').trigger('click'); $('#radio-all').addClass('active'); $('.astra-sites__category-filter-anchor').text('All'); $('#wp-filter-search-input').val(''); if ($('.astra-sites-show-favorite-button').hasClass('active')) { $('.astra-sites-show-favorite-button').removeClass('active'); $('body').removeClass('astra-sites-showing-favorites'); AstraSitesAdmin.add_sites(astraSitesVars.default_page_builder_sites); AstraSitesAdmin._clean_url_params('favorites'); } else { AstraSitesAdmin._clean_url_params('search'); AstraSitesAdmin._clean_url_params('astra-site'); AstraSitesAdmin._clean_url_params('astra-page'); AstraSitesAdmin._clean_url_params('license'); AstraSitesAdmin.close_pages_popup(); if (!AstraSitesAdmin._getParamFromURL('favorites')) { var url_params = { 'favorites': 'show' }; AstraSitesAdmin._changeAndSetURL(url_params); } $('.astra-sites-show-favorite-button').addClass('active'); $('body').addClass('astra-sites-showing-favorites'); var items = []; for (favorite_id in astraSitesVars.favorite_data) { var exist_data = astraSitesVars.default_page_builder_sites[astraSitesVars.favorite_data[favorite_id].toString()] || {}; if (!$.isEmptyObject(exist_data)) { items[astraSitesVars.favorite_data[favorite_id].toString()] = exist_data; } } if (!AstraSitesAdmin.isEmpty(items)) { AstraSitesAdmin.add_sites(items); $(document).trigger('astra-sites-added-sites'); } else { $('#astra-sites').html(wp.template('astra-sites-no-favorites')); } } }, _set_preview_screenshot_by_page: function (element) { var large_img_url = $(element).find('.theme-screenshot').attr('data-featured-src') || ''; var url = $(element).find('.theme-screenshot').attr('data-src') || ''; var page_name = $(element).find('.theme-name').text() || ''; $(element).siblings().removeClass('current_page'); $(element).addClass('current_page'); var page_id = $(element).attr('data-page-id') || ''; if (page_id) { AstraSitesAdmin._clean_url_params('astra-page'); var url_params = { 'astra-page': page_id, }; AstraSitesAdmin._changeAndSetURL(url_params); } $('.site-import-layout-button').removeClass('disabled'); if (page_name) { var title = astraSitesVars.strings.importSingleTemplate.replace('%s', page_name.trim()); $('.site-import-layout-button').text(title); } if (url) { $('.single-site-preview').animate({ scrollTop: 0 }, 0); $('.single-site-preview img').addClass('loading').attr('src', url); var imgLarge = new Image(); imgLarge.src = large_img_url; imgLarge.onload = function () { $('.single-site-preview img').removeClass('loading'); $('.single-site-preview img').attr('src', imgLarge.src); }; } }, /** * Preview Inner Pages for the Site * * @since 2.0.0 * @return null */ _change_site_preview_screenshot: function (event) { event.preventDefault(); var item = $(this); AstraSitesAdmin._set_preview_screenshot_by_page(item); }, _show_pages: function (event) { var perent = $(this).parents('.astra-theme'); perent.siblings().removeClass('current'); perent.addClass('current'); var site_id = perent.attr('data-site-id') || ''; AstraSitesAdmin.show_pages_by_site_id(site_id); }, _show_default_page_builder_sites: function () { if (!$('#astra-sites').length) { return; } if (Object.keys(astraSitesVars.default_page_builder_sites).length) { var favorites = AstraSitesAdmin._getParamFromURL('favorites'); var search_term = AstraSitesAdmin._getParamFromURL('search'); if (search_term) { // var items = AstraSitesAdmin._get_sites_and_pages_by_search_term(search_term); var data = AstraSitesAdmin.get_sites_by_search_term(search_term); AstraSitesAdmin.autocompleteTags = data.tags; AstraSitesAdmin._autocomplete(); if (!AstraSitesAdmin.isEmpty(data.sites) || !AstraSitesAdmin.isEmpty(data.related)) { AstraSitesAdmin.add_sites(data); $('#wp-filter-search-input').val(search_term); } else { $('#astra-sites').html(astraSitesVars.default_page_builder_sites); } } else if (favorites) { AstraSitesAdmin._show_favorite(); } else { AstraSitesAdmin.add_sites(astraSitesVars.default_page_builder_sites); } // Show single site preview. var site_id = AstraSitesAdmin._getParamFromURL('astra-site'); if (site_id) { AstraSitesAdmin.show_pages_by_site_id(site_id); } } else { var temp = []; for (var i = 0; i < 8; i++) { temp['id-' + i] = { 'title': 'Lorem Ipsum', 'class': 'placeholder-site', }; } AstraSitesAdmin.add_sites(temp); $('#astra-sites').addClass('temp'); AstraSitesAdmin._sync_library_with_ajax(true); } var show_license = AstraSitesAdmin._getParamFromURL('license'); if (show_license) { AstraSitesAdmin._show_activate_license_notice(); } }, _change_page_builder: function () { var page_builder = $(this).attr('data-page-builder') || ''; $(this).parents('.page-builders').find('img').removeClass('active'); $(this).find('img').addClass('active'); $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-change-page-builder', page_builder: page_builder, }, beforeSend: function () { console.groupCollapsed('Change Page Builder'); AstraSitesAdmin._log('Change Page Builder..'); }, }) .done(function (response) { AstraSitesAdmin._log(response); AstraSitesAdmin._clean_url_params('astra-site'); AstraSitesAdmin._clean_url_params('astra-page'); AstraSitesAdmin._clean_url_params('change-page-builder'); AstraSitesAdmin._clean_url_params('license'); console.groupEnd(); location.reload(); }); }, _ajax_change_page_builder: function () { var page_builder_slug = $(this).attr('data-page-builder') || ''; var page_builder_img = $(this).find('img').attr('src') || ''; var page_builder_title = $(this).find('.title').text() || ''; if (page_builder_img) { $('.selected-page-builder').find('img').attr('src', page_builder_img); } if (page_builder_title) { $('.selected-page-builder').find('.page-builder-title').text(page_builder_title); } $('#wp-filter-search-input').val(''); $('#astra-sites-admin').removeClass('searching'); $('body').removeClass('astra-previewing-single-pages'); if ($('.page-builders [data-page-builder="' + page_builder_slug + '"]').length) { $('.page-builders [data-page-builder="' + page_builder_slug + '"]').siblings().removeClass('active'); $('.page-builders [data-page-builder="' + page_builder_slug + '"]').addClass('active'); } if (page_builder_slug) { AstraSitesAdmin._clean_url_params('astra-site'); AstraSitesAdmin._clean_url_params('astra-page'); AstraSitesAdmin._clean_url_params('license'); $('#astra-sites').show(); $('#site-pages').hide(); $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-change-page-builder', page_builder: page_builder_slug, }, beforeSend: function () { console.groupCollapsed('Change Page Builder'); AstraSitesAdmin._log('Change Page Builder..'); }, }) .done(function (response) { AstraSitesAdmin._log(response); console.groupEnd(); if (response.success) { $('.astra-sites__category-filter-items').find('.ast-sites__filter-wrap').removeClass('category-active'); $('.ast-sites__filter-wrap').first().addClass('category-active'); $('.astra-sites__category-filter-anchor').attr('data-slug', ''); AstraSitesAdmin.filter_array = []; $('.ast-sites__filter-wrap-checkbox input:radio').attr('checked', false); $('.ast-sites__filter-wrap-checkbox input:radio').removeClass('active'); $('#radio-all').trigger('click'); $('#radio-all').addClass('active'); $('.astra-sites__category-filter-anchor').text('All'); AstraSitesAdmin._closeFilter(); astraSitesVars.default_page_builder = page_builder_slug; // Set changed page builder data as a default page builder object. astraSitesVars.default_page_builder_sites = response.data; $('.astra-sites-show-favorite-button').removeClass('active'); AstraSitesAdmin.add_sites(response.data); AstraSitesAdmin._autocomplete(); AstraSitesAdmin.quick_corner_cta_link = astraSitesVars.cta_quick_corner_links[ page_builder_slug ]; AstraSitesAdmin.premium_popup_cta_link = astraSitesVars.cta_premium_popup_links[ page_builder_slug ]; AstraSitesAdmin.default_cta_link = astraSitesVars.cta_links[ page_builder_slug ]; $(document).trigger('astra-sites-change-page-builder', page_builder_slug, response.data, response); } }); } }, add_sites_after_search: function (data) { var template = wp.template('new-astra-sites-page-builder-sites-search'); $('#astra-sites').html(template(data)); AstraSitesAdmin._load_large_images(); $(document).trigger('astra-sites-added-sites'); }, add_sites: function (data) { var template = wp.template('astra-sites-page-builder-sites'); $('#astra-sites').html(template(data)); AstraSitesAdmin._load_large_images(); $(document).trigger('astra-sites-added-sites'); }, _toggle_tooltip: function (event) { event.preventDefault(); var tip_id = $(this).data('tip-id') || ''; if (tip_id && $('#' + tip_id).length) { $('#' + tip_id).toggle(); } }, _resetData: function () { if ($(this).hasClass('updating-message')) { return; } if (AstraSitesAdmin.subscribe_skiped || AstraSitesAdmin.subscription_form_submitted == 'yes') { $('.user-building-for-title').hide(); $('.astra-sites-advanced-options').show(); $('.astra-sites-advanced-options-heading').hide(); $('#astra-sites-subscription-form-one').hide(); } if (false === AstraSitesAdmin.subscribe_skiped && $('.subscription-enabled').length && AstraSitesAdmin.subscription_form_submitted !== 'yes') { AstraSitesAdmin._validate_field($('.subscription-input-wp-user-type')); AstraSitesAdmin._validate_field($('.subscription-input-build-website-for')); if ($('.subscription-field-wrap').hasClass('subscription-error')) { console.log('error'); return; } } $('.site-import-cancel').show(); $('.install-theme-info').hide(); if (false === AstraSitesAdmin.subscribe_skiped && $('.subscription-enabled').length && AstraSitesAdmin.subscription_form_submitted !== 'yes') { $('.subscription-popup').show(); $('.astra-sites-result-preview .default').hide(); } else { AstraSitesAdmin.subscribe_status = true; $('.ast-importing-wrap').show(); } AstraSitesAdmin.import_start_time = new Date(); $(this).addClass('updating-message installing').text('Importing..'); $('body').addClass('importing-site'); var output = ''; $('.current-importing-status').html(output); // Process Theme Activate and Install Process if ($('.astra-sites-theme-activation .checkbox').is(':checked')) { var status = $('.astra-sites-theme-activation .checkbox').data('status') AstraSitesAdmin._installAstra(status); } $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-set-reset-data', _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Site Reset Data'); }, }) .done(function (response) { console.log('List of Reset Items:'); AstraSitesAdmin._log(response); console.groupEnd(); if (response.success) { AstraSitesAdmin.site_imported_data = response.data; // Process Bulk Plugin Install & Activate. AstraSitesAdmin._bulkPluginInstallActivate(); } }); }, _remove_skip_and_import_popup: function (event) { event.preventDefault(); $(this).parents('.skip-and-import').addClass('hide-me visited'); if ($('.skip-and-import.hide-me').not('.visited').length) { $('.skip-and-import.hide-me').not('.visited').first().removeClass('hide-me'); } else { $('.astra-sites-result-preview .default').removeClass('hide-me'); if ($('.astra-sites-result-preview').hasClass('import-page')) { AstraSitesAdmin.skip_and_import_popups = []; var notinstalled = AstraSitesAdmin.required_plugins.notinstalled || 0; if (!notinstalled.length) { AstraSitesAdmin.import_page_process(); } } } }, _start_site_import: function () { if (AstraSitesAdmin._is_reset_data()) { $(document).trigger('astra-sites-reset-data'); } else { $(document).trigger('astra-sites-reset-data-done'); } }, _reset_customizer_data: function () { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-reset-customizer-data', _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Reseting Customizer Data'); AstraSitesAdmin._log_title('Reseting Customizer Data..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Reset Customizer Settings Failed!', jqXHR); console.groupEnd(); }) .done(function (data) { AstraSitesAdmin._log(data); AstraSitesAdmin._log_title('Complete Resetting Customizer Data..'); AstraSitesAdmin._log('Complete Resetting Customizer Data..'); console.groupEnd(); $(document).trigger('astra-sites-reset-customizer-data-done'); }); }, _reset_site_options: function () { // Site Options. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-reset-site-options', _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Reseting Site Options'); AstraSitesAdmin._log_title('Reseting Site Options..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Reset Site Options Failed!', jqXHR); console.groupEnd(); }) .done(function (data) { AstraSitesAdmin._log(data); AstraSitesAdmin._log_title('Complete Reseting Site Options..'); console.groupEnd(); $(document).trigger('astra-sites-reset-site-options-done'); }); }, _reset_widgets_data: function () { // Widgets. $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-reset-widgets-data', _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Reseting Widgets'); AstraSitesAdmin._log_title('Reseting Widgets..'); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._importFailMessage(jqXHR.status + ' ' + jqXHR.statusText, 'Reset Widgets Data Failed!', jqXHR); console.groupEnd(); }) .done(function (data) { AstraSitesAdmin._log(data); AstraSitesAdmin._log_title('Complete Reseting Widgets..'); console.groupEnd(); $(document).trigger('astra-sites-reset-widgets-data-done'); }); }, _reset_posts: function () { if (AstraSitesAdmin.site_imported_data['reset_posts'].length) { AstraSitesAdmin.reset_remaining_posts = AstraSitesAdmin.site_imported_data['reset_posts'].length; console.groupCollapsed('Deleting Posts'); AstraSitesAdmin._log_title('Deleting Posts..'); $.each(AstraSitesAdmin.site_imported_data['reset_posts'], function (index, post_id) { AstraSitesAjaxQueue.add({ url: astraSitesVars.ajaxurl, type: 'POST', data: { action: 'astra-sites-delete-posts', post_id: post_id, _ajax_nonce: astraSitesVars._ajax_nonce, }, success: function (result) { if (AstraSitesAdmin.reset_processed_posts < AstraSitesAdmin.site_imported_data['reset_posts'].length) { AstraSitesAdmin.reset_processed_posts += 1; } AstraSitesAdmin._log_title('Deleting Post ' + AstraSitesAdmin.reset_processed_posts + ' of ' + AstraSitesAdmin.site_imported_data['reset_posts'].length + '' + astraSitesVars.xml_import_interrupted_primary + '
', '' + astraSitesVars.xml_import_interrupted_secondary + '
' ); } break; } }; evtSource.onerror = function (error) { evtSource.close(); console.log(error); AstraSitesAdmin._importFailMessage('', 'Import Process Interrupted'); }; evtSource.addEventListener('log', function (message) { var data = JSON.parse(message.data); var message = data.message || ''; if (message && 'info' === data.level) { message = message.replace(/"/g, function (letter) { return ''; }); $('.current-importing-status-description').html(message); } AstraSitesAdmin._log(message, data.level); }); } }); } else { $(document).trigger('astra-sites-import-xml-done'); } }, _is_reset_data: function () { if ($('.astra-sites-reset-data').find('.checkbox').is(':checked')) { return true; } return false; }, _is_process_xml: function () { if ($('.astra-sites-import-xml').find('.checkbox').is(':checked')) { return true; } return false; }, _is_process_customizer: function () { var theme_status = $('.astra-sites-theme-activation .checkbox').length ? $('.astra-sites-theme-activation .checkbox').is(':checked') : true; var customizer_status = $('.astra-sites-import-customizer').find('.checkbox').is(':checked'); if (theme_status && customizer_status) { return true; } return false; }, _is_process_widgets: function () { if ($('.astra-sites-import-widgets').find('.checkbox').is(':checked')) { return true; } return false; }, _startImportCartFlows: function (event) { if (AstraSitesAdmin._is_process_xml() && '' !== AstraSitesAdmin.cartflows_url) { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', dataType: 'json', data: { action: 'astra-sites-import-cartflows', cartflows_url: AstraSitesAdmin.cartflows_url, _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Importing Flows & Steps'); AstraSitesAdmin._log_title('Importing Flows & Steps..'); AstraSitesAdmin._log(AstraSitesAdmin.cartflows_url); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._failed( jqXHR.status + ' ' + jqXHR.statusText, 'Import Cartflows Flow Failed!' ); console.groupEnd(); }) .done(function (response) { AstraSitesAdmin._log(response); // 1. Fail - Import WPForms Options. if (false === response.success) { AstraSitesAdmin._failed( response.data, 'Import Cartflows Flow Failed!' ); console.groupEnd(); } else { console.groupEnd(); // 1. Pass - Import Customizer Options. $(document).trigger(AstraSitesAdmin.action_slug + '-import-cartflows-done'); } }); } else { $(document).trigger(AstraSitesAdmin.action_slug + '-import-cartflows-done'); } }, _startImportWPForms: function (event) { if (AstraSitesAdmin._is_process_xml() && '' !== AstraSitesAdmin.wpforms_url) { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', dataType: 'json', data: { action: 'astra-sites-import-wpforms', wpforms_url: AstraSitesAdmin.wpforms_url, _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Importing WP Forms'); AstraSitesAdmin._log_title('Importing WP Forms..'); AstraSitesAdmin._log(AstraSitesAdmin.wpforms_url); }, }) .fail(function (jqXHR) { AstraSitesAdmin._log(jqXHR); AstraSitesAdmin._failed( jqXHR.status + ' ' + jqXHR.statusText, 'Import WP Forms Failed' ); console.groupEnd(); }) .done(function (response) { AstraSitesAdmin._log(response); // 1. Fail - Import WPForms Options. if (false === response.success) { AstraSitesAdmin._failed( response.data, 'Import WP Forms Failed' ); console.groupEnd(); } else { console.groupEnd(); // 1. Pass - Import Customizer Options. $(document).trigger(AstraSitesAdmin.action_slug + '-import-wpforms-done'); } }); } else { $(document).trigger(AstraSitesAdmin.action_slug + '-import-wpforms-done'); } }, /** * 1. Import Customizer Options. */ _importCustomizerSettings: function (event) { if (AstraSitesAdmin._is_process_customizer()) { $.ajax({ url: astraSitesVars.ajaxurl, type: 'POST', dataType: 'json', data: { action: 'astra-sites-import-customizer-settings', _ajax_nonce: astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Importing Customizer Settings'); AstraSitesAdmin._log_title('Importing Customizer Settings..'); AstraSitesAdmin._log(JSON.parse(AstraSitesAdmin.customizer_data)); }, }) .fail(function (jqXHR) { AstraSitesAdmin._failed( jqXHR.status + ' ' + jqXHR.statusText, 'Import Customizer Settings Failed!' ); AstraSitesAdmin._log(jqXHR); console.groupEnd(); }) .done(function (response) { AstraSitesAdmin._log(response); // 1. Fail - Import Customizer Options. if (false === response.success) { AstraSitesAdmin._failed( response.data, 'Import Customizer Settings Failed!' ); console.groupEnd(); } else { console.groupEnd(); // 1. Pass - Import Customizer Options. $(document).trigger('astra-sites-import-customizer-settings-done'); } }); } else { $(document).trigger('astra-sites-import-customizer-settings-done'); } }, /** * Import Success Button. * * @param {string} data Error message. */ _importSuccessButton: function () { $('.astra-demo-import').removeClass('updating-message installing') .removeAttr('data-import') .addClass('view-site') .removeClass('astra-demo-import') .text(astraSitesVars.strings.viewSite) .attr('target', '_blank') .append('') .attr('href', astraSitesVars.siteURL); }, _failed: function( errMessage, titleMessage ) { var link = astraSitesVars.process_failed_secondary; link = link.replace( '#DEMO_URL#', AstraSitesAdmin.templateData['astra-site-url'] ); link = link.replace( '#SUBJECT#', encodeURI('AJAX failed: ' + errMessage ) ); AstraSitesAdmin._importFailMessage( errMessage, titleMessage, '', astraSitesVars.process_failed_primary, link); }, /** * Import Error Button. * * @param {string} data Error message. */ _importFailMessage: function (message, heading, jqXHR, topContent, bottomContent) { heading = heading || 'The import process interrupted'; var status_code = ''; if (jqXHR) { status_code = jqXHR.status ? parseInt(jqXHR.status) : ''; } if (200 == status_code && astraSitesVars.debug) { var output = astraSitesVars.importFailedMessageDueToDebug; } else { var output = topContent || astraSitesVars.importFailedMessage; if (message) { if( jqXHR.responseText ) { message = message + 'Plugin "' + response.name + '" installation failed.
There has been an error on your website. Read an article here to solve the issue.
'); $('.astra-demo-import').removeClass('updating-message installing button-primary').addClass('disabled').text('Import Failed!'); wp.updates.queue = []; wp.updates.queueChecker(); console.groupEnd(); }, /** * Installing Plugin */ _pluginInstalling: function (event, args) { event.preventDefault(); console.groupCollapsed('Installing Plugin "' + args.name + '"'); AstraSitesAdmin._log_title('Installing Plugin - ' + args.name); console.log(args); }, /** * Bulk Plugin Active & Install */ _bulkPluginInstallActivate: function () { var not_installed = []; var activate_plugins = []; if( astraSitesVars.requiredPlugins ) { activate_plugins = astraSitesVars.requiredPlugins.inactive || []; not_installed = astraSitesVars.requiredPlugins.notinstalled || []; } // If has class the skip-plugins then, // Avoid installing 3rd party plugins. if ($('.astra-sites-result-preview').hasClass('skip-plugins')) { not_installed = []; } // First Install Bulk. if (not_installed.length > 0) { AstraSitesAdmin._installAllPlugins(not_installed); } // Second Activate Bulk. if (activate_plugins.length > 0) { AstraSitesAdmin._activateAllPlugins(activate_plugins); } if (activate_plugins.length <= 0 && not_installed.length <= 0) { AstraSitesAdmin._enable_demo_import_button(); } }, /** * Activate All Plugins. */ _activateAllPlugins: function (activate_plugins) { AstraSitesAdmin.remaining_activate_plugins = activate_plugins.length; $.each(activate_plugins, function (index, single_plugin) { AstraSitesAjaxQueue.add({ url: astraSitesVars.ajaxurl, type: 'POST', data: { 'action': 'astra-required-plugin-activate', 'init': single_plugin.init, 'options': AstraSitesAdmin.options_data, 'enabledExtensions': AstraSitesAdmin.enabled_extensions, '_ajax_nonce': astraSitesVars._ajax_nonce, }, beforeSend: function () { console.groupCollapsed('Activating Plugin "' + single_plugin.name + '"'); AstraSitesAdmin._log_title('Activating Plugin "' + single_plugin.name + '"'); }, success: function (result) { console.log(result); console.groupEnd('Activating Plugin "' + single_plugin.name + '"'); if (result.success) { var pluginsList = astraSitesVars.requiredPlugins.inactive; // Reset not installed plugins list. astraSitesVars.requiredPlugins.inactive = AstraSitesAdmin._removePluginFromQueue(single_plugin.slug, pluginsList); // Enable Demo Import Button AstraSitesAdmin._enable_demo_import_button(); } AstraSitesAdmin.remaining_activate_plugins -= 1; if (0 === AstraSitesAdmin.remaining_activate_plugins) { console.groupEnd('Activating Required Plugins..'); } } }); }); AstraSitesAjaxQueue.run(); }, /** * Install All Plugins. */ _installAllPlugins: function (not_installed) { $.each(not_installed, function (index, single_plugin) { // Add each plugin activate request in Ajax queue. // @see wp-admin/js/updates.js wp.updates.queue.push({ action: 'install-plugin', // Required action. data: { slug: single_plugin.slug, init: single_plugin.init, name: single_plugin.name, success: function () { $(document).trigger('wp-plugin-install-success', [single_plugin]); }, error: function () { $(document).trigger('wp-plugin-install-error', [single_plugin]); }, } }); }); // Required to set queue. wp.updates.queueChecker(); }, _show_get_agency_bundle_notice: function (event) { event.preventDefault(); $('.astra-sites-result-preview') .removeClass('astra-sites-activate-license astra-sites-site-import-popup astra-sites-page-import-popup') .addClass('astra-sites-get-agency-bundle') .show(); var template = wp.template('astra-sites-pro-site-description'); var output = ''; output += 'Retrying in 10...
'; var timeleft = AstraSitesAdmin.delay_value / 1000; var countdown = setInterval(function() { timeleft -= 1; $(".ast-retry-sec").html( timeleft ); if ( timeleft <= 0 ) { clearInterval(countdown); $(".ast-retry-sec").html( "0" ); } }, 1000); } $('.astra-sites-result-preview').addClass('import-site').removeClass('import-page'); $('.astra-sites-result-preview') .removeClass('astra-sites-get-agency-bundle preview-page-from-search-result astra-sites-page-import-popup astra-sites-activate-license') .addClass('astra-sites-site-import-popup') .show(); var template = wp.template('astra-sites-result-preview'); $('.astra-sites-result-preview').html(template('astra-sites')).addClass('preparing'); $('.astra-sites-import-content').append('Retrying in 10...
'; var timeleft = AstraSitesAdmin.delay_value / 1000; var countdown = setInterval(function() { timeleft -= 1; $(".ast-retry-sec").html( timeleft ); if ( timeleft <= 0 ) { clearInterval(countdown); $(".ast-retry-sec").html( "0" ); } }, 1000); } $('.astra-sites-result-preview') .removeClass('astra-sites-subscription-popup astra-sites-activate-license astra-sites-get-agency-bundle astra-sites-site-import-popup astra-sites-page-import-popup') .addClass('preview-page-from-search-result') .show(); $('.astra-sites-result-preview').html(wp.template('astra-sites-result-preview')).addClass('preparing'); $('.astra-sites-import-content').append('