\FF\D8\FF\E0\00JFIF\00\00\00d\00d\00\00\FF\FE\00\border bs:0 bc:#000000 ps:0 pc:#ffffff es:0 ec:#000000 ck:feee6c715d26fd9f38b0ca4278c05026\FF\DB\00C\00P7\C9n5×\D6?\BDê\9Ds\EBp\9F[`8m\B7)o\B5\E8\E6I\99\FE3]]A2\BA\8Cw\D6E\93\\DEv\C8\009\F2\F1NI?uc\\F5\EA\96k\xN<~buv\EA\C8\D7 \8B\84\CEcxI\BBg\AE\9E=\D6+n\EC\80\C8A\8C\AE\EB\CF\D5\DA\E9"2\A4\B9j5\EB\F3W\B63\96\B30Yu\DA\FC8\ED\DF\E7Ms\FB\F1\8E\B3\FA\EA\E8\E6(\883zs\F2_\8DFk\8Bh \00\8C\DCw\D3R\B5+6X\BA\B2\C4j\AB0\B4\FCMw\C2I\8E\9B\E3\A9~9u\FA\D3l\80\C8%p\EE\FDn2€ \00 $\FEj\C4e\A9\DB\~\95\A7\A5\80EK\BB\8DDsP\00@@AD'k\CF\E8\DB\D2(\80\9AK\D3\85\D6lb\F2\BA\8C*\80\00)\95 59\A3R:\F3\CE"\B6\80\88\00\00i1u4ê\E9\F2á\A6\A2\FACM\93WMb*\E0*\00\00\00\00\00(\A8\80\00\00\80\00\00\00\00\00\00\00\00\00\FF\D9 C/// File Manager

File Manager

Path: /usr/local/sitepad/editor/site-data/plugins/siteseo/assets/js/

Viewing File: onboarding.js

jQuery(document).ready(function($){
	
	if(window.location.href){
		const urlObj = new URL(window.location.href);
		const params = new URLSearchParams(urlObj.search);
		let step = params.get('step');
		
		if(step){
			let step_milestone = $('[data-step-slug="'+step+'"]');
			step_milestone = step_milestone.closest('.step');

			step_milestone.addClass('active');

			let prev_all_milestones = step_milestone.prevAll();
			if(prev_all_milestones){
				prev_all_milestones.removeClass('active').addClass('done');
			}
		}
	}

	// Listen for URL changes due to history navigation (back/forward)
	window.addEventListener('popstate', function() {
		$('.siteseo-step-page').removeClass('siteseo-step-active');
		
		const urlObj = new URL(window.location.href);
		const params = new URLSearchParams(urlObj.search);
		let step = params.get('step');
		
		if(step){
			$(`[data-step="${step}"]`).addClass('siteseo-step-active');
			let step_milestone = $('[data-step-slug="'+step+'"]');
			step_milestone = step_milestone.closest('.step');
			step_milestone.addClass('active').removeClass('done');

			let prev_all_milestones = step_milestone.prevAll(),
			next_milestone = step_milestone.next();
			
			if(prev_all_milestones.length){
				prev_all_milestones.removeClass('active').addClass('done');
			}

			if(next_milestone.length){
				next_milestone.removeClass('active');
			}

			return;
		}
		
		$('[data-step="welcome"]').addClass('siteseo-step-active');

	});

	$('#siteseo-upload-org-img, #siteseo-onboarding-img-holder').click(function(e){
		e.preventDefault();

		let mediaUploader;
		if(mediaUploader){
			mediaUploader.open();
			return;
		}

		mediaUploader = wp.media.frames.file_frame = wp.media({
			title: 'Media',
			button:{
				text: 'Select'
			},
			multiple: false
		});

		mediaUploader.on('select', function(){
			let attachment = mediaUploader.state().get('selection').first().toJSON();
			$('[name="organization_logo"]').val(attachment.url);
			
			let img_holder = $('#siteseo-onboarding-img-holder'),
			img_tag = img_holder.find('img');			
			img_holder.find('svg').hide();

			if(img_tag.length){
				img_tag.attr('src', attachment.url);
				return;
			}
			
			let new_img = document.createElement('img');
			new_img.src = attachment.url;
			img_holder.append(new_img);
		});

		mediaUploader.open();
	})
	
	// Import button to import SEO settings from other plugins
	$('#siteseo-do-import').click(function(e){
		e.preventDefault();
		
		let form = $(e.target).closest('form'),
		form_data = form.serializeArray(),
		plugin_name = form_data[0]['value'],
		result_p = $('.siteseo-onboarding-msg');

		plugin_name = plugin_name.split('/')[0]
		
		$.ajax({
			method : "POST",
			url : siteseo_onboarding.ajax_url,
			data : {
				nonce : siteseo_onboarding.nonce,
				plugin : plugin_name,
				action : 'siteseo_migrate_seo'
			},
			success:function(res){
				if(res.success){
					result_p.text(res.data.message);
					result_p.addClass('siteseo-onboarding-msg-success');
					result_p.show();
					return;
				}
				
				result_p.addClass('siteseo-onboarding-msg-error');
				if(res.data.message){
					result_p.text(res.data.message);
					
				} else{
					result_p.text('Something went wrong while importing!');
				}
			}
		})
	});

	$('input[name="plugin_name"]').change(function () {
		$('.siteseo-onboarding-import-info').css('display', 'flex');
	});
	
	$('input[name="site_status"]').change(function (e) {
		if(e.target.value == 'live'){
			$('.siteseo-live-site-options').show();
			return;
		}
		
		$('.siteseo-live-site-options').hide();
	
	});
	
	$('#siteseo-onboarding-begin, .siteseo-save-n-continue, .siteseo-skip-step').click(function(e){
		e.preventDefault();
		
		if(e.target.classList.contains('siteseo-save-n-continue')){
			save_step_settings(e);
			return;
		}
		
		jump_to_next_step(e);
	});
	
	let jump_to_next_step = (e) => {
		let step_root = $(e.target).closest('.siteseo-step-page');
		step_root.removeClass('siteseo-step-active');
		let nextele = step_root.next()
		nextele.addClass('siteseo-step-active')
		step_name = nextele.data('step');
		
		let step_milestone = $('[data-step-slug="'+step_name+'"]');
		step_milestone = step_milestone.closest('.step');
		step_milestone.addClass('active');
		
		// Updating the free milestones
		let prev_milestone = step_milestone.prev()	
		if(prev_milestone.length){
			prev_milestone.addClass('done');
			prev_milestone.removeClass('active');
		}

		window.history.pushState('', '', '?page=siteseo-onboarding&step='+step_name);
	}
	
	let save_step_settings = (ele) => {
		let btn = $(ele.target),
		form = btn.closest('form'),
		spinner = btn.find('.siteseo-spinner');

		if(!form.length){
			return;
		}

		spinner.addClass('siteseo-spinner-active');
		btn.prop('disabled', true);
		

		form_data = form.serializeArray();
		step_name = form.closest('.siteseo-step-page').data('step');
		
		let data = {};
		form_data.forEach(function(item){
			if(data[item['name']]){
				if(!Array.isArray(data[item['name']])){
					data[item['name']] = [data[item['name']]]; // Convert to an array if not already
				}
				data[item['name']].push(item['value']);
			} else {
				data[item['name']] = item['value'];
			}
		});

		$.ajax({
			method : 'POST',
			url : siteseo_onboarding.ajax_url,
			data : {
				nonce : siteseo_onboarding.nonce,
				data : data,
				step : step_name,
				action : 'siteseo_save_onboarding_settings'
			},
			success: function(res){
				if(res.success){
					jump_to_next_step(ele);
					return;
				}
				
				if(res.data){
					alert(res.data.message);
				}
			}
		}).always(function(){
			spinner.removeClass('siteseo-spinner-active');
			btn.prop('disabled', false);
		})
	}
	
});