/***************************/
//Ajax contact form validator by Raspo
/***************************/


$().ready(function(){
	//variabili globali
	var nome = $("#nome");
	var nomeText = $(nome).val();
	
	var cognome = $("#cognome");
	var cognomeText = $(cognome).val();
	
	var telefono = $("#telefono");
	var telefonoText = $(telefono).val();
	
	var email = $("#email");
	var emailText = $(email).val();
	
	var message = $("#testo");
	var messageText = $(message).val();

	//validazione di campi
	function validateEmail(){
		var a = $("#email").val();
		var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
		if(filter.test(a)){
			$("#email").removeClass("error");
			return true;
		}
		else{
			$("#email").addClass("error");
			return false;
		}
	}
	function validateNome(){
		if((nome.val().length < 4) || (nome.val() == nomeText)){
			nome.addClass("error");
			return false;
		}
		else{
			nome.removeClass("error");
			return true;
		}
	}
	function validateCognome(){
		if((cognome.val().length < 4) || (cognome.val() == cognomeText)){
			cognome.addClass("error");
			return false;
		}
		else{
			cognome.removeClass("error");
			return true;
		}
	}
	function validateTelefono(){
		if((telefono.val().length < 4) || (telefono.val() == telefonoText)){
			telefono.addClass("error");
			return false;
		}
		else{
			telefono.removeClass("error");
			return true;
		}
	}
	function validateMessage(){
		if((message.val().length < 4) || (message.val() == messageText)){
			message.addClass("error");
			return false;
		}
		else{
			message.removeClass("error");
			return true;
		}
	}	
	
	//qualche controllo e invio effettivo dell'email con ajax
	$("#contatti").submit(function(){
		if(!validateNome() | !validateCognome() |  !validateTelefono() | !validateEmail() | !validateMessage()){
			return false;
		}
		else {
			$('#load_img').fadeIn();
			$.ajax({
				type: 'post',
				url: 'inviaemail_idea.asp',
				data: 'nome=' + nome.val() + '&cognome=' + cognome.val() + '&telefono=' + telefono.val() + '&email=' + email.val() + '&message=' + message.val(),
				success: function(results) {
					$('#load_img').fadeOut(function() {
						if(results == "email inviata!") {
							$('#result').html("<span class='success'>e-Mail inviata correttamente</span>");
							$(nome).val(nomeText);
							$(cognome).val(cognomeText);
							$(telefono).val(telefonoText);
							$(email).val(emailText);
							$(message).val(messageText); 
						}
						else 
							$('#result').html("<span class='fail'>Errore</span>")
					});
				}
			}); // end ajax
			return false;
		}
	});
	

	//gestione dei dati predefiniti nei vari campi quando ricevono il focus
	//name
	nome.focus(function(){
		if($(this).val() == nomeText) $(this).val("");
	});
	nome.blur(function(){
		if($(this).val() == "") $(this).val(nomeText);
	});

	//referente
	cognome.focus(function(){
		if($(this).val() == cognomeText) $(this).val("");
	});
	cognome.blur(function(){
		if($(this).val() == "") $(this).val(cognomeText);
	});
	
	//telefono
	telefono.focus(function(){
		if($(this).val() == telefonoText) $(this).val("");
	});
	telefono.blur(function(){
		if($(this).val() == "") $(this).val(telefonoText);
	});
	
	//email
	email.focus(function(){
		if($(this).val() == emailText) $(this).val("");
	});
	email.blur(function(){
		if($(this).val() == "") $(this).val(emailText);
	});
	
	//message
	message.focus(function(){
		if($(this).val() == messageText) $(this).val("");
	});
	message.blur(function(){
		if($(this).val() == "") $(this).val(messageText);
	});
});
