.select2-container { box-sizing: border-box; display: inline-block; margin: 0; position: relative; vertical-align: middle; } .select2-container .select2-selection--single { box-sizing: border-box; cursor: pointer; display: block; height: 28px; user-select: none; -webkit-user-select: none; } .select2-container .select2-selection--single .select2-selection__rendered { display: block; padding-left: 8px; padding-right: 20px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .select2-container .select2-selection--single .select2-selection__clear { position: relative; } .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered { padding-right: 8px; padding-left: 20px; } .select2-container .select2-selection--multiple { box-sizing: border-box; cursor: pointer; display: block; min-height: 32px; user-select: none; -webkit-user-select: none; } .select2-container .select2-selection--multiple .select2-selection__rendered { display: inline-block; overflow: hidden; padding-left: 8px; text-overflow: ellipsis; white-space: nowrap; } .select2-container .select2-search--inline { float: left; } .select2-container .select2-search--inline .select2-search__field { box-sizing: border-box; border: none; font-size: 100%; margin-top: 5px; padding: 0; } .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button { -webkit-appearance: none; } .select2-dropdown { background-color: white; border: 1px solid #aaa; border-radius: 3px; box-sizing: border-box; display: block; position: absolute; left: -100000px; width: 100%; z-index: 1051; } .select2-results { display: block; } .select2-results__options { list-style: none; margin: 0; padding: 0; } .select2-results__option { padding: 6px; user-select: none; -webkit-user-select: none; } .select2-results__option[aria-selected] { cursor: pointer; } .select2-container--open .select2-dropdown { left: 0; } .select2-container--open .select2-dropdown--above { border-bottom: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .select2-container--open .select2-dropdown--below { border-top: none; border-top-left-radius: 0; border-top-right-radius: 0; } .select2-search--dropdown { display: block; padding: 4px; } .select2-search--dropdown .select2-search__field { padding: 4px; width: 100%; box-sizing: border-box; } .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button { -webkit-appearance: none; } .select2-search--dropdown.select2-search--hide { display: none; } .select2-close-mask { border: 0; margin: 0; padding: 0; display: block; position: fixed; left: 0; top: 0; min-height: 100%; min-width: 100%; height: auto; width: auto; opacity: 0; z-index: 99; background-color: #fff; filter: alpha(opacity=0); } .select2-hidden-accessible { border: 0 !important; clip: rect(0 0 0 0) !important; height: 1px !important; margin: -1px !important; overflow: hidden !important; padding: 0 !important; position: absolute !important; width: 1px !important; } .select2-container--default .select2-selection--single { background-color: #fff; border: 1px solid #aaa; border-radius: 3px; } .select2-container--default .select2-selection--single .select2-selection__rendered { color: #444; line-height: 28px; } .select2-container--default .select2-selection--single .select2-selection__clear { cursor: pointer; float: right; font-weight: bold; } .select2-container--default .select2-selection--single .select2-selection__arrow { height: 26px; position: absolute; top: 1px; right: 1px; width: 20px; } .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #888 transparent transparent transparent; border-style: solid; border-width: 5px 4px 0 4px; height: 0; left: 50%; margin-left: -4px; margin-top: -2px; position: absolute; top: 50%; width: 0; } .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear { float: left; } .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow { left: 1px; right: auto; } .select2-container--default.select2-container--disabled .select2-selection--single { background-color: #eee; cursor: default; } .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear { display: none; } .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { border-color: transparent transparent #888 transparent; border-width: 0 4px 5px 4px; } .select2-container--default .select2-selection--multiple { background-color: white; border: 1px solid #aaa; border-radius: 3px; cursor: text; } .select2-container--default .select2-selection--multiple .select2-selection__rendered { box-sizing: border-box; list-style: none; margin: 0; padding: 0 5px; width: 100%; } .select2-container--default .select2-selection--multiple .select2-selection__rendered li { list-style: none; } .select2-container--default .select2-selection--multiple .select2-selection__placeholder { color: #999; margin-top: 5px; float: left; } .select2-container--default .select2-selection--multiple .select2-selection__clear { cursor: pointer; float: right; font-weight: bold; margin-top: 5px; margin-right: 10px; } .select2-container--default .select2-selection--multiple .select2-selection__choice { background-color: #e4e4e4; border: 1px solid #aaa; border-radius: 4px; cursor: default; float: left; margin-right: 5px; margin-top: 5px; padding: 0 5px; } .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color: #999; cursor: pointer; display: inline-block; font-weight: bold; margin-right: 2px; } .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { color: #333; } .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline { float: right; } .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice { margin-left: 5px; margin-right: auto; } .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { margin-left: 2px; margin-right: auto; } .select2-container--default.select2-container--focus .select2-selection--multiple { border: solid black 1px; outline: 0; } .select2-container--default.select2-container--disabled .select2-selection--multiple { background-color: #eee; cursor: default; } .select2-container--default.select2-container--disabled .select2-selection__choice__remove { display: none; } .select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple { border-top-left-radius: 0; border-top-right-radius: 0; } .select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .select2-container--default .select2-search--dropdown .select2-search__field { border: 1px solid #aaa; } .select2-container--default .select2-search--inline .select2-search__field { background: transparent; border: none; outline: 0; box-shadow: none; -webkit-appearance: textfield; } .select2-container--default .select2-results > .select2-results__options { max-height: 200px; overflow-y: auto; } .select2-container--default .select2-results__option[role=group] { padding: 0; } .select2-container--default .select2-results__option[aria-disabled=true] { color: #999; } .select2-container--default .select2-results__option[aria-selected=true] { background-color: #ddd; } .select2-container--default .select2-results__option .select2-results__option { padding-left: 1em; } .select2-container--default .select2-results__option .select2-results__option .select2-results__group { padding-left: 0; } .select2-container--default .select2-results__option .select2-results__option .select2-results__option { margin-left: -1em; padding-left: 2em; } .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option { margin-left: -2em; padding-left: 3em; } .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { margin-left: -3em; padding-left: 4em; } .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { margin-left: -4em; padding-left: 5em; } .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option { margin-left: -5em; padding-left: 6em; } .select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: #5897fb; color: white; } .select2-container--default .select2-results__group { cursor: default; display: block; padding: 6px; } .select2-container--classic .select2-selection--single { background-color: #f7f7f7; border: 1px solid #aaa; border-radius: 3px; outline: 0; background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%); background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%); background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } .select2-container--classic .select2-selection--single:focus { border: 1px solid #5897fb; } .select2-container--classic .select2-selection--single .select2-selection__rendered { color: #444; line-height: 28px; } .select2-container--classic .select2-selection--single .select2-selection__clear { cursor: pointer; float: right; font-weight: bold; margin-right: 10px; } .select2-container--classic .select2-selection--single .select2-selection__placeholder { color: #999; } .select2-container--classic .select2-selection--single .select2-selection__arrow { background-color: #ddd; border: none; border-left: 1px solid #aaa; border-top-right-radius: 4px; border-bottom-right-radius: 4px; height: 26px; position: absolute; top: 1px; right: 1px; width: 20px; background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%); background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%); background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); } .select2-container--classic .select2-selection--single .select2-selection__arrow b { border-color: #888 transparent transparent transparent; border-style: solid; border-width: 5px 4px 0 4px; height: 0; left: 50%; margin-left: -4px; margin-top: -2px; position: absolute; top: 50%; width: 0; } .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear { float: left; } .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow { border: none; border-right: 1px solid #aaa; border-radius: 0; border-top-left-radius: 4px; border-bottom-left-radius: 4px; left: 1px; right: auto; } .select2-container--classic.select2-container--open .select2-selection--single { border: 1px solid #5897fb; } .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow { background: transparent; border: none; } .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b { border-color: transparent transparent #888 transparent; border-width: 0 4px 5px 4px; } .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single { border-top: none; border-top-left-radius: 0; border-top-right-radius: 0; background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%); background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%); background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); } .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single { border-bottom: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%); background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%); background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); } .select2-container--classic .select2-selection--multiple { background-color: white; border: 1px solid #aaa; border-radius: 3px; cursor: text; outline: 0; } .select2-container--classic .select2-selection--multiple:focus { border: 1px solid #5897fb; } .select2-container--classic .select2-selection--multiple .select2-selection__rendered { list-style: none; margin: 0; padding: 0 5px; } .select2-container--classic .select2-selection--multiple .select2-selection__clear { display: none; } .select2-container--classic .select2-selection--multiple .select2-selection__choice { background-color: #e4e4e4; border: 1px solid #aaa; border-radius: 4px; cursor: default; float: left; margin-right: 5px; margin-top: 5px; padding: 0 5px; } .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove { color: #888; cursor: pointer; display: inline-block; font-weight: bold; margin-right: 2px; } .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover { color: #555; } .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { float: right; } .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice { margin-left: 5px; margin-right: auto; } .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove { margin-left: 2px; margin-right: auto; } .select2-container--classic.select2-container--open .select2-selection--multiple { border: 1px solid #5897fb; } .select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple { border-top: none; border-top-left-radius: 0; border-top-right-radius: 0; } .select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple { border-bottom: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .select2-container--classic .select2-search--dropdown .select2-search__field { border: 1px solid #aaa; outline: 0; } .select2-container--classic .select2-search--inline .select2-search__field { outline: 0; box-shadow: none; } .select2-container--classic .select2-dropdown { background-color: white; border: 1px solid transparent; } .select2-container--classic .select2-dropdown--above { border-bottom: none; } .select2-container--classic .select2-dropdown--below { border-top: none; } .select2-container--classic .select2-results > .select2-results__options { max-height: 200px; overflow-y: auto; } .select2-container--classic .select2-results__option[role=group] { padding: 0; } .select2-container--classic .select2-results__option[aria-disabled=true] { color: grey; } .select2-container--classic .select2-results__option--highlighted[aria-selected] { background-color: #3875d7; color: white; } .select2-container--classic .select2-results__group { cursor: default; display: block; padding: 6px; } .select2-container--classic.select2-container--open .select2-dropdown { border-color: #5897fb; } /** * AJAX Request Queue * * - add() * - remove() * - run() * - stop() * * @since 1.0.0 */ var AstraSitesAjaxQueue = (function () { var requests = []; return { /** * Add AJAX request * * @since 1.0.0 */ add: function (opt) { requests.push(opt); }, /** * Remove AJAX request * * @since 1.0.0 */ remove: function (opt) { if (jQuery.inArray(opt, requests) > -1) { requests.splice($.inArray(opt, requests), 1); } }, /** * Run / Process AJAX request * * @since 1.0.0 */ run: function () { var self = this, oriSuc; if (requests.length) { oriSuc = requests[0].complete; requests[0].complete = function () { if (typeof (oriSuc) === 'function') oriSuc(); requests.shift(); self.run.apply(self, []); }; jQuery.ajax(requests[0]); } else { self.tid = setTimeout(function () { self.run.apply(self, []); }, 1000); } }, /** * Stop AJAX request * * @since 1.0.0 */ stop: function () { requests = []; clearTimeout(this.tid); }, /** * Debugging. * * @param {mixed} data Mixed data. */ _log: function (data, level) { var date = new Date(); var time = date.toLocaleTimeString(); var color = '#444'; if (typeof data == 'object') { console.log(data); } else { console.log(data + ' ' + time); } }, }; }()); (function ($) { /** Checking the element is in viewport? */ $.fn.isInViewport = function () { // If not have the element then return false! if (!$(this).length) { return false; } var elementTop = $(this).offset().top; var elementBottom = elementTop + $(this).outerHeight(); var viewportTop = $(window).scrollTop(); var viewportBottom = viewportTop + $(window).height(); return elementBottom > viewportTop && elementTop < viewportBottom; }; var AstraSSEImport = { complete: { posts: 0, media: 0, users: 0, comments: 0, terms: 0, }, updateDelta: function (type, delta) { this.complete[type] += delta; var self = this; requestAnimationFrame(function () { self.render(); }); }, updateProgress: function (type, complete, total) { var text = complete + '/' + total; if ('undefined' !== type && 'undefined' !== text) { total = parseInt(total, 10); if (0 === total || isNaN(total)) { total = 1; } var percent = parseInt(complete, 10) / total; var progress = Math.round(percent * 100) + '%'; var progress_bar = percent * 100; if (progress_bar <= 100) { var process_bars = document.getElementsByClassName('astra-site-import-process'); for (var i = 0; i < process_bars.length; i++) { process_bars[i].value = progress_bar; } AstraSitesAdmin._log_title('Importing Content.. ' + progress, false, false); } } }, render: function () { var types = Object.keys(this.complete); var complete = 0; var total = 0; for (var i = types.length - 1; i >= 0; i--) { var type = types[i]; this.updateProgress(type, this.complete[type], this.data.count[type]); complete += this.complete[type]; total += this.data.count[type]; } this.updateProgress('total', complete, total); } }; AstraSitesAdmin = { default_cta_link: astraSitesVars.cta_link, quick_corner_cta_link: astraSitesVars.cta_quick_corner_link, premium_popup_cta_link: astraSitesVars.cta_premium_popup_link, import_source: 'legacy', wpcontent_left_margin: $('#wpcontent').css('margin-left'), header: $('#astra-sites-menu-page .nav-tab-wrapper'), header_offset: 0, header_gutter: null, header_stick_after: null, subscribe_status: false, subscribe_skiped: false, site_import_status: false, page_import_status: false, imported_page_data: null, first_import_complete: astraSitesVars.first_import_complete, remaining_activate_plugins: [], required_plugins_original_list: [], subscription_form_submitted: astraSitesVars.subscribed, compatibilities: [], skip_and_import_popups: [], required_plugins: [], _ref: null, _breakpoint: 768, _has_default_page_builder: false, _first_time_loaded: true, visited_sites_and_pages: [], reset_remaining_posts: 0, reset_remaining_wp_forms: 0, reset_remaining_terms: 0, reset_processed_posts: 0, reset_processed_wp_forms: 0, reset_processed_terms: 0, site_imported_data: null, backup_taken: false, filter_array: [], autocompleteTags: astraSitesVars.all_site_categories_and_tags.map( function( item ) { return item.name; }) || [], templateData: {}, mouseLocation: false, log_file: '', customizer_data: '', wxr_url: '', wpforms_url: '', cartflows_url: '', options_data: '', widgets_data: '', enabled_extensions: '', action_slug: '', import_start_time: '', import_end_time: '', search_terms: [], search_terms_with_count: [], page_settings_flag: true, delay_in_request: false, delay_value : 10000, // 10 seconds. init: function () { this._show_default_page_builder_sites(); this._bind(); this._autocomplete(); this._load_large_images(); this._prepare_markup(); }, _prepare_markup: function () { var WPAdminbarOuterHeight = parseFloat($('#wpadminbar').outerHeight()); var HeaderOuterHeight = parseFloat(AstraSitesAdmin.header.outerHeight()); AstraSitesAdmin.header .wrap('
') .parent().css('min-height', HeaderOuterHeight); $('.single-site-footer').css('margin-left', AstraSitesAdmin.wpcontent_left_margin); $('.single-site-pages-wrap').css('margin-right', AstraSitesAdmin.wpcontent_left_margin); AstraSitesAdmin.header_gutter = WPAdminbarOuterHeight; AstraSitesAdmin.header_offset = WPAdminbarOuterHeight + HeaderOuterHeight; AstraSitesAdmin.header_stick_after = WPAdminbarOuterHeight - HeaderOuterHeight; AstraSitesAdmin._stick_header(); }, /** * load large image * * @return {[type]} [description] */ _load_large_image: function (el) { if (el.hasClass('loaded')) { return; } if (el.parents('.astra-theme').isInViewport()) { var large_img_url = el.data('src') || ''; var imgLarge = new Image(); imgLarge.src = large_img_url; imgLarge.onload = function () { el.removeClass('loading'); el.addClass('loaded'); el.css('background-image', 'url(\'' + imgLarge.src + '\''); }; } }, _load_large_images: function () { $('.theme-screenshot').each(function (key, el) { AstraSitesAdmin._load_large_image($(el)); }); }, _autocomplete: function () { var strings = AstraSitesAdmin.autocompleteTags; strings = _.uniq(strings); strings = _.sortBy(strings); $("#wp-filter-search-input").autocomplete({ appendTo: ".astra-sites-autocomplete-result", classes: { "ui-autocomplete": "astra-sites-auto-suggest" }, source: function (request, response) { var results = $.ui.autocomplete.filter(strings, request.term); // Show only 10 results. response(results.slice(0, 15)); }, open: function (event, ui) { $('.search-form').addClass('searching'); }, close: function (event, ui) { $('.search-form').removeClass('searching'); } }); $("#wp-filter-search-input").focus(); }, /** * Debugging. * * @param {mixed} data Mixed data. */ _log: function (data, level) { var date = new Date(); var time = date.toLocaleTimeString(); var color = '#444'; switch (level) { case 'emergency': // color = '#f44336'; case 'critical': // color = '#f44336'; case 'alert': // color = '#f44336'; case 'error': // color = '#f44336'; if (typeof data == 'object') { console.error(data); } else { console.error(data + ' ' + time); } break; case 'warning': // color = '#ffc107'; case 'notice': // color = '#ffc107'; if (typeof data == 'object') { console.warn(data); } else { console.warn(data + ' ' + time); } break; default: if (typeof data == 'object') { console.log(data); } else { console.log(data + ' ' + time); } break; // case 'info': color = '#03a9f4'; // break; // case 'debug': color = '#ffc107'; } }, _log_title: function (data, append) { var markup = '' + 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('