HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux vm8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: afleverb (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //var/www/bak/wintergenomics_site/wp-content/plugins/rife-elementor-extensions/assets/js/admin.js
/*global alert, ajaxurl, console */
(function($){
	"use strict";

	var $body;

	window.A13_REE_ADMIN = {
		//run after DOM is loaded
		onReady : function(){
			$body = $(document.body);
			this.tabs();
			this.importer();
		},

		tabs : function(){
			var tabs = $('nav.nav-tab-wrapper').children();

			if (tabs.length) {
				var sections = $('div.a13-settings-section'),
					active_tab_class = 'nav-tab-active',
				    active_section_class = 'active-section',

					tabsClick               = function (event) {
						event.preventDefault();

						var hrefWithoutHash = location.href.replace(/#.*/, '');

						history.pushState({}, '', hrefWithoutHash + this.hash);

						goToSettingsTabFromHash();
					},

					goToSettingsTabFromHash = function () {
						var hash = location.hash.slice(1);

						if (hash) {
							goToSettingsTab(hash);
						}
					},

					goToSettingsTab         = function (tabName) {
						var $active_section = $('#'+tabName),
							$active_tab = $('#a13-settings-'+tabName);

						if (!$active_section.length || !sections.is($active_section)) {
							//use first tab if hash is wrong
							$active_section = sections.eq(0);
							$active_tab = tabs.eq(0);
						}
						//switch tabs
						tabs.removeClass(active_tab_class);
						$active_tab.addClass(active_tab_class);

						//switch sections
						sections.removeClass(active_section_class);
						$active_section.addClass(active_section_class);
					};

				//bind events
				tabs.on({
					click: tabsClick
				});

				//init
				goToSettingsTabFromHash();

				//history moving
				$(window).on('popstate', function () {
					var hash = location.hash.slice(1);
					if(hash.length && sections.is('#'+hash)){
						goToSettingsTab(hash);
					}
				});
			}
		},

		importer : function(){
			var import_button = $('#start-import'),
				progress_bar  = $('div.import_progress'),
				status = $('#demo_data_import_status'),
				error_count,last_response,

				startImport = function(){
					//reset
					error_count = 0;
					last_response = {
						level : '',
						sublevel:  ''
					};

					import_button.prop('disabled', true);

					//start progress bar
					progress_bar.addClass('running');

					//start import
					nextLevel('','');
				},

				nextLevel = function(level, sublevel){
					$.ajax({
						type: "POST",
						url: ajaxurl,
						data:  {
							action : 'a13ree_import_templates', //called in backend
							level : level,
							sublevel : sublevel
						},
						success: function(r) { //r = response
							if(r !== false ){
								//save last reply
								last_response = r;
								//reset error counter
								error_count = 0;

								setupStatus(r);

								if(r.is_it_end === false){//end of importing
									nextLevel(r.level, r.sublevel);
								}
								else{
									progress_bar.css('width','100%').removeClass('running');
									import_button.prop('disabled', false );
								}
							}
						},
						error: function(  jqXHR,  textStatus,  errorThrown ){
							var message;

							//check what type of error happened
							if(typeof jqXHR.status !=='undefined' && (jqXHR.status == 404 || jqXHR.status == 403)){
								message = 'Server returned status '+jqXHR.status+'. Hopefully it is temporary.';
							}
							else if(textStatus == 'parsererror'){
								message = 'Importer returned data in wrong format. Probably unexpected HTML leaked into server reply instead of JSON format.';
							}
							else if( errorThrown == 'Internal Server Error' ){
								message = 'Server returned "Internal Server Error" while importing. It usually mean misconfiguration in server/WordPress.';
							}
							else{
								message = 'Unknown error: '+textStatus+' - '+errorThrown;
							}

							//try to recover from error
							if( error_count < 10 ){
								//count this error
								error_count++;

								//wait and try again
								setTimeout(function(){nextLevel(last_response.level, last_response.sublevel);}, 5000);

								//done here
								return;
							}

							//report error
							alert( message );

							progress_bar.removeClass('running');
							import_button.prop('disabled', true);
						},
						dataType: 'json'
					});
				},

				setupStatus = function(r){
					var content = r.level_name;
					if(r.sublevel_name.length){
						content += ' - '+r.sublevel_name;
					}

					status.html(content);
					progress_bar.css('width',r.progress+'%');

					if(r.alert == true){
						alert(r.log);
					}
				};

			import_button.on( 'click', startImport);
		}
	};

	var A13_REE_ADMIN = window.A13_REE_ADMIN;

	//start ADMIN
	$( function() {
		A13_REE_ADMIN.onReady();
	} );

})(jQuery);