/***************************/
//Ajax contact form validator by Raspo
/***************************/


$().ready(function(){
	//variabili globali
	var azienda = $("#azienda");
	var aziendaText = $(azienda).val();
	
	var referente = $("#referente");
	var referenteText = $(referente).val();
	
	var telefono = $("#telefono");
	var telefonoText = $(telefono).val();
	
	var cellulare = $("#cellulare");
	var cellulareText = $(cellulare).val();
	
	var email = $("#email");
	var emailText = $(email).val();
	
	var sito = $("#sito");
	var sitoText = $(sito).val();
	
	var citta = $("#citta");
	var cittaText = $(citta).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 validateAzienda(){
		if((azienda.val().length < 4) || (azienda.val() == aziendaText)){
			azienda.addClass("error");
			return false;
		}
		else{
			azienda.removeClass("error");
			return true;
		}
	}
	function validateReferente(){
		if((referente.val().length < 4) || (referente.val() == referenteText)){
			referente.addClass("error");
			return false;
		}
		else{
			referente.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 validateCellulare(){
		if((cellulare.val().length < 4) || (cellulare.val() == cellulareText)){
			cellulare.addClass("error");
			return false;
		}
		else{
			cellulare.removeClass("error");
			return true;
		}
	}
	function validateCitta(){
		if((citta.val().length < 4) || (citta.val() == cittaText)){
			citta.addClass("error");
			return false;
		}
		else{
			citta.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(!validateAzienda() | !validateReferente() |  !validateTelefono() | !validateEmail() | !validateCitta() | !validateMessage()){
			return false;
		}
		else {
			$('#load_img').fadeIn();
			$.ajax({
				type: 'post',
				url: 'inviaemail.asp',
				data: 'azienda=' + azienda.val() + '&referente=' + referente.val() + '&cellulare=' + cellulare.val() + '&telefono=' + telefono.val() + '&email=' + email.val() + '&citta=' + citta.val() + '&site=' + sito.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>");
							$(azienda).val(aziendaText);
							$(referente).val(referenteText);
							$(telefono).val(telefonoText);
							$(cellulare).val(cellulareText);
							$(email).val(emailText);
							$(citta).val(cittaText);
							$(sito).val(sitoText);
							$(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
	azienda.focus(function(){
		if($(this).val() == aziendaText) $(this).val("");
	});
	azienda.blur(function(){
		if($(this).val() == "") $(this).val(aziendaText);
	});

	//referente
	referente.focus(function(){
		if($(this).val() == referenteText) $(this).val("");
	});
	referente.blur(function(){
		if($(this).val() == "") $(this).val(referenteText);
	});
	
	//telefono
	telefono.focus(function(){
		if($(this).val() == telefonoText) $(this).val("");
	});
	telefono.blur(function(){
		if($(this).val() == "") $(this).val(telefonoText);
	});
	
	//cellulare
	cellulare.focus(function(){
		if($(this).val() == cellulareText) $(this).val("");
	});
	cellulare.blur(function(){
		if($(this).val() == "") $(this).val(cellulareText);
	});
	
	//email
	email.focus(function(){
		if($(this).val() == emailText) $(this).val("");
	});
	email.blur(function(){
		if($(this).val() == "") $(this).val(emailText);
	});
	
	//citta
	citta.focus(function(){
		if($(this).val() == cittaText) $(this).val("");
	});
	citta.blur(function(){
		if($(this).val() == "") $(this).val(cittaText);
	});
	
	//Sito web
	sito.focus(function(){
		if($(this).val() == sitoText) $(this).val("");
	});
	sito.blur(function(){
		if($(this).val() == "") $(this).val(sitoText);
	});
	
	//message
	message.focus(function(){
		if($(this).val() == messageText) $(this).val("");
	});
	message.blur(function(){
		if($(this).val() == "") $(this).val(messageText);
	});
});
