var errUNAME = false;
var errPASS = false;
var errMAIL = false;
var errMAIL_COMPARE = false;
var errPHONE = false;
var errCEL1 = false;
var errCEL2 = false;
var errCEL = false;

 $(document).ready(function(){

	$('input').focus(function(){
		$('#ctrl_step1').slideUp('fast');
 		$('#ctrl_step1').html('');
		$('#ctrl_step2').slideUp('fast');
 		$('#ctrl_step2').html('');
		$('#ctrl_step3').slideUp('fast');
 		$('#ctrl_step3').html('');
	});
	
	
 	$('#reg_user_name').val('').blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'usernameString', value: $.trim($('#reg_user_name').val()) },
		function(data) {
				if (!data.result) {
				
					$('#ctrl_user_name').append("username troppo corta! Minimo 4 caratteri<br/>");
					$('#ctrl_user_name').slideDown('fast');
					
					errUNAME = true;
					
				} else {
				
					errUNAME = false;
					
				}
			});
 	}).blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'username', value: $('#reg_user_name').val() },
		function(data) {
				if (!data.result) {
					$('#ctrl_user_name').append("username gi&agrave; esistente!<br/>");
					$('#ctrl_user_name').slideDown('fast');
					
					errUNAME = true;
					
				} else {
				
					errUNAME = false;
					
				}
			});
			
 	}).focus(function(){
 		$('#ctrl_user_name').slideUp('fast');
 		$('#ctrl_user_name').html('');
 	});
 	
 	$('#reg_password').val('').focus(function(){
 		$('#ctrl_password').slideUp('fast');
 		$('#ctrl_password').html('');
 	});
 	
 	$('#reg_confirm_password').val('').blur(function(){
 		if ($('#reg_confirm_password').val() != $('#reg_password').val())
 		{
 			$('#ctrl_password').append("Le password non coincidono!<br/>");
 			$('#ctrl_password').slideDown('fast')
 			
 			errPASS = true;
					
		} else {
				
			errPASS = false;
					
		}
	}).focus(function(){
 		$('#ctrl_password').slideUp('fast');
 		$('#ctrl_password').html('');
 	});
 	
 	
 	
 	$('#reg_datadinascita').datepicker({
 		yearRange: '-80:0',
	 	dateFormat: 'yy-mm-dd'
	 });
 			
 	$('#step1_btn').click(function(){
 	
 		if ($.trim($('#reg_user_name').val()).match(/@/)=="@") {
				$('#ctrl_step1').html("Lo Username non pu&ograve; essere un'indirizzo email.");
				$('#ctrl_step1').slideDown('fast');
				return false;
		}
		if (($.trim($('#reg_user_name').val()) == "") || ($.trim($('#reg_password').val()) == "")) {
	 			
	 			$('#ctrl_step1').html("Username e Password non possono essere vuoti");
	 			$('#ctrl_step1').slideDown('fast');
	 			return false;
	 	}
	 	
	 	 if ($('#reg_password').val() !=  $('#reg_confirm_password').val()) {
	 			
	 			$('#ctrl_step1').html("Password e conferma non coincidono!");
	 			$('#ctrl_step1').slideDown('fast');
	 			return false;
	 	}
	 	
	 	if (($.trim($('#reg_name').val()) == "") || ($.trim($('#reg_cogname').val()) == "")) {
	 			
	 			$('#ctrl_step1').html("Nome e Cognome non possono essere vuoti");
	 			$('#ctrl_step1').slideDown('fast');
	 			return false;
	 	}
	 	
	 	if (($('#reg_datadinascita').val() == "")) {
	 			
	 			$('#ctrl_step1').html("La data di nascita non pu&ograve; essere vuota!");
	 			$('#ctrl_step1').slideDown('fast');
	 			return false;
	 	}
	 	
	 	
	 	if (!((errUNAME) || (errPASS))){
	 		
	 		switchSlider('reg_slider', 'reg_slider_step2');
	 			
	 	} else {
	 			
	 		$('#ctrl_step1').html("Controlla lo username o la password");
	 		$('#ctrl_step1').slideDown('fast');
	 	}
	 });
 	
 	
 	/*
 	*
 	* Inserire i controlli per il telefono fisso
 	*
 	*/
 	
 	$('#reg_step2_telefono').val('').blur(function(){
 		if (this.value != "") {
 		if(isMobileNumber($('#reg_step2_telefono').val()) || !isPhone($('#reg_step2_telefono').val())) {
 		
 			$('#ctrl_telefono').html("Numero di telefono fisso non valido");
	 		$('#ctrl_telefono').slideDown('fast');
	 			errPHONE = true;
	 		
	 		} else {
	 		
	 			errPHONE = false;
	 		}
 		} else { errPHONE = false; return true;}
 		
 	}).focus(function(){
 	
 		$('#ctrl_telefono').slideUp('fast');
 		$('#ctrl_telefono').html('');
 	
 	}); 	
 	
 	
 	/*
 	*
 	* Inserire i controlli per i campi per i telefoni celluari
 	*
 	*/
 	$('#reg_step2_cellulare').val('').blur(function(){
 	
 	if (this.value != "") {
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'mobile', value: this.value },
		function(data) {
				if (!data.result) {
					$('#ctrl_cellulare').html("Numero di cellulare gi&agrave; esistente!");
				 	$('#ctrl_cellulare').slideDown('fast');
				 		
				 	errCEL = true;
					
				} else {
				
					errCEL = false;
					
				}
			});
		} else return true;	
 	}).blur(function(){
 	
 	if (this.value != "") {
	 		if (isMobileNumber(this.value) && isPhone(this.value)) {
	 			
		 		if (this.value == $('#reg_step2_cellulare1').val()){
			 		
			 			$('#ctrl_cellulare').html("I numeri di cellulare devono essere univoci");
				 		$('#ctrl_cellulare').slideDown('fast');
				 		
				 		errCEL = true;
			 		
			 		} else {
			 		
			 			errCEL = false;
			 		}
			 		
			 		if (this.value == $('#reg_step2_cellulare2').val()){
			 		
			 			$('#ctrl_cellulare').html("I numeri di cellulare devono essere univoci");
				 		$('#ctrl_cellulare').slideDown('fast');
				 		
				 		errCEL = true;
			 		
			 		} else {
			 			
			 			errCEL = false;
			 		
			 		}
		 	} else {
		 	
		 	
		 			$('#ctrl_cellulare').html("Il numero non &egrave; un cellulare!");
			 		$('#ctrl_cellulare').slideDown('fast');
					errCEL = true;
		 	}
 		}
 	}).focus(function(){
 	
 		$('#ctrl_cellulare').slideUp('fast');
 		$('#ctrl_cellulare').html('');
 	
 	}); 	
 	 
 	$('#reg_step2_cellulare1').val('').blur(function(){
 	if (this.value != "") {
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'mobile', value: this.value },
		function(data) {
				if (!data.result) {
					$('#ctrl_cellulare1').html("Numero di cellulare gi&agrave; esistente!");
				 	$('#ctrl_cellulare1').slideDown('fast');
				 		
				 	errCEL1 = true;
					
				} else {
				
					errCEL1 = false;
					
				}
			});
		} else return true;
 	}).blur(function(){
 	
 		if (this.value != "") {
	 		if (isMobileNumber(this.value) && isPhone(this.value)) {
	 		if (this.value == $('#reg_step2_cellulare').val()){
	 		
	 			$('#ctrl_cellulare1').html("I numeri di cellulare devono essere univoci");
		 		$('#ctrl_cellulare1').slideDown('fast');
		 		
	 			errCEL1 = true;
	 		} else {
	 		
	 			errCEL1 = false;
	 		}
	 		
	 		if (this.value == $('#reg_step2_cellulare2').val()){
	 		
	 			$('#ctrl_cellulare1').html("I numeri di cellulare devono essere univoci");
		 		$('#ctrl_cellulare1').slideDown('fast');
		 		
		 		errCEL1 = true;
		 		
	 		} else {
	 		
	 			errCEL1 = false;
	 		}
	 	} else {
	 	
	 	
	 			$('#ctrl_cellulare1').html("Il numero non &egrave; un cellulare!");
		 		$('#ctrl_cellulare1').slideDown('fast');
				errCEL1 = true;
	 	}
	 }
 		
 	}).focus(function(){
 	
 		$('#ctrl_cellulare1').slideUp('fast');
 		$('#ctrl_cellulare1').html('');
 	
 	}); 
 		 
 	$('#reg_step2_cellulare2').val('').blur(function(){
 	if (this.value != "") {
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'mobile', value: this.value },
		function(data) {
				if (!data.result) {
					$('#ctrl_cellulare2').html("Numero di cellulare gi&agrave; esistente!");
				 	$('#ctrl_cellulare2').slideDown('fast');
				 		
				 	errCEL2 = true;
					
				} else {
				
					errCEL2 = false;
					
				}
			});
		} else return true;	
 	}).blur(function(){
 	
 		if (this.value != "") {
	 		if (isMobileNumber(this.value) && isPhone(this.value)) {
	 		if (this.value == $('#reg_step2_cellulare1').val()){
	 		
	 			$('#ctrl_cellulare2').html("I numeri di cellulare devono essere univoci");
		 		$('#ctrl_cellulare2').slideDown('fast');
		 		
		 		errCEL2 = true;
	 		} else {
	 		
	 			errCEL2 = false;
	 		}
	 		
	 		if (this.value == $('#reg_step2_cellulare').val()){
	 		
	 			$('#ctrl_cellulare2').html("I numeri di cellulare devono essere univoci");
		 		$('#ctrl_cellulare2').slideDown('fast');
		 		
		 		errCEL2 = true;
				
	 		} else {
	 		
	 			errCEL2 = false;
	 		}
	 	} else {
	 	
	 	
	 			$('#ctrl_cellulare2').html("Il numero non &egrave; un cellulare!");
		 		$('#ctrl_cellulare2').slideDown('fast');
				errCEL2 = true;
	 	}
	 }
 		
 	}).focus(function(){
 	
 		$('#ctrl_cellulare2').slideUp('fast');
 		$('#ctrl_cellulare2').html('');
 	
 	}); 	


	
	/*
	*
	* Controllo Email
	*
	*/
	/*
	$('#reg_step2_email').val('').blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'emailString', value: $('#reg_step2_email').val() },
		function(data) {
				if (!data.result) {
				
					$('#ctrl_email').append("indirizzo email non valido<br/>");
					$('#ctrl_email').slideDown('fast');
					
					errMAIL = true;
					
				} else {
				
					errMAIL = false;
					
				}
			});
			
 	}).blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'email', value: $('#reg_step2_email').val() },
		function(data) {
				if (!data.result) {
					$('#ctrl_email').append("indirizzo email gi&agrave; esistente!<br/>");
					$('#ctrl_email').slideDown('fast');
					
					errMAIL = true;
					
				} else {
				
					errMAIL = false;
					
				}
			});
		});
	
	$('#reg_step2_confermaemail').val('').blur(function(){
 		if ($('#reg_step2_confermaemail').val() != $('#reg_step2_email').val())
 		{
 			$('#ctrl_email').append("Le email non coincidono!<br/>");
 			$('#ctrl_email').slideDown('fast')
 			
 			errMAIL = true;
					
		} else {
				
			errMAIL = false;
					
		}
	}).focus(function(){
 		$('#ctrl_email').slideUp('fast');
 		$('#ctrl_email').html('');
 	});
	*/
	
	$('div [cosa=email]').val('').blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'emailString', value: $('#reg_step2_email').val() },
		function(data) {
				if (!data.result) {
					if($('#ctrl_email').html()=="")
						$('#ctrl_email').append("indirizzo email non valido<br/>");
					$('#ctrl_email').slideDown('fast');
					
					errMAIL = true;
					
				} else {
				
					errMAIL = false;
					
				}
			});
			
 	}).blur(function(){
		$.getJSON( '/actions/doUserValidation.php' ,
		{ action: 'email', value: $('#reg_step2_email').val() },
		function(data) {
				if (!data.result) {
					if($('#ctrl_email').html()=="")
						$('#ctrl_email').append("indirizzo email gi&agrave; esistente!<br/>");
					$('#ctrl_email').slideDown('fast');
					
					errMAIL = true;
					
				} else {
				
					errMAIL = false;
					
				}
			});
	}).blur(function(){
 		if ($('#reg_step2_confermaemail').val() != $('#reg_step2_email').val())
 		{
			if($('#ctrl_email').html()=="")
				$('#ctrl_email').append("Le email non coincidono!<br/>");
 			$('#ctrl_email').slideDown('fast')
 			
 			errMAIL_COMPARE = true;
					
		} else {
				
			errMAIL_COMPARE = false;
					
		}
	}).blur(function(){
 		if ($('#reg_step2_confermaemail').val() != $('#reg_step2_email').val())
 		{
 			if($('#ctrl_email').html()=="")
				$('#ctrl_email').append("Le email non coincidono!<br/>");
 			$('#ctrl_email').slideDown('fast')
 			
 			errMAIL_COMPARE = true;
					
		} else {
				
			errMAIL_COMPARE = false;
					
		}
	}).focus(function(){
 	
 		$('#ctrl_email').slideUp('fast');
 		$('#ctrl_email').html('');
 	
 	});
	
	$('#step2_btn').click( function (){
		//alert(errCEL);
  		
 		if ($('#reg_step2_cellulare').val() == ""){
 		
 			$('#ctrl_step2').html("Devi specificare almeno un cellulare");
 			$('#ctrl_step2').slideDown('fast');
 			return false;
 		
 		}

		if ($('#reg_step2_email').val() == ""){
 		
 			$('#ctrl_step2').html("L'indirizzo email non pu&ograve; essere vuoto");
 			$('#ctrl_step2').slideDown('fast');
 			return false;
 		
 		}
	 	/*
 		if ($('#reg_step2_confermaemail').val() != $('#reg_step2_email').val())
		{	 			
			$('#ctrl_step2').html("Indirizzo email e conferma non coincidono!");
			$('#ctrl_step2').slideDown('fast');
			return false;
	 	}
 		*/
		//alert("\nerrMAIL: "+errMAIL+"\nerrCEL: "+errCEL+"\nerrCEL1: "+errCEL1+"\nerrCEL1: "+errCEL1+"\nerrPHONE: "+errPHONE)
 		/*
		if (((errMAIL) || (errCEL) || (errCEL1) || (errCEL2) || (errPHONE))){
 		
 			$('#ctrl_step2').html("Controlla i dati inseriti, non sono corretti");
 			$('#ctrl_step2').slideDown('fast');
 			
 		} else {
 			//alert(errCEL);
			switchSlider('reg_slider_step2', 'reg_slider_step3');
 		}*/
		almenoUno = false;
		$("#reg_slider_step2").find("div[class=controlloDiv]").each(function(){
			if($(this).html()!="")
				almenoUno = true;
		})
		
		if (almenoUno){
 			$('#ctrl_step2').html("Controlla i dati inseriti, non sono corretti");
 			$('#ctrl_step2').slideDown('fast');
 			return false;
 		
 		}
		else
		{
			//alert("ok");
			switchSlider('reg_slider_step2', 'reg_slider_step3');
		}
 	
 	});
 	
 	
 	$('#submit_btn').click(function(){
 		if($('#reg_privacy').attr("checked")==false)
 		{	 
			$('#ctrl_step3').html("E' obbligatorio acconsentire al trattamento dati.");
			$('#ctrl_step3').slideDown('fast');
			return false;
	 	}
		else
		{
 			postAjaxRequest('reg_form','/actions/doRegister.php','','div#reg_slider_step3');
		}
 	
 	});

});


	function isMobileNumber(number){	

		prefix = number.substr(0,3);
		
		var numbers = new Array('330', '331', '333', '334', '335', '336', '337', '338', '339', '360', '363', '366', '368','340', '343', '345', '346', '347', '348', '349','320', '323', '327', '328', '329', '380', '383', '388', '389','390', '391', '392', '393','389', '377','366','331');
		
		if (number.length == 10 ) {
			 for (i = 0; i < numbers.length; i++){
			 
			 	if (prefix == numbers[i]) {
			 		return true;
			 	}
			 
			 }
		 }
		 return false;
	
	
	}
	
	function isPhone(number) {
	
		reg = new RegExp("^\\d{7,12}$");
		//alert(reg);
		//alert(reg);
		if (reg.test(number)){
		
		 	return true;
		 	
		} else {
		
			return false;
		}
	
	}

 		