$(document).ready(function(){
	//qui si rimette a posto i colori delle input box e dei testi
	
	$('#Nome').removeClass('error');
	$('#Cognome').removeClass('error');
	$('#submit_by').removeClass('error');	
	$('#Telefono').removeClass('error');	
	$('#text_telefono').removeClass('error');
	$('#text_Nome').removeClass('error');
	$('#text_Cognome').removeClass('error');
	$('#text_submit_by').removeClass('error');
	$('#text_trattamento').removeClass('error');
	$('#text_oggetto').removeClass('error');
	$('#text_captcha').removeClass('error');
	$('#captcha_code').removeClass('error');
	
	//si prepara un dialog
	$('#divError').dialog({modal : true, resizable : false, title : "Errore inserimento", width : 400, autoOpen : false});
	
	//se si clicca su invia
	//mettere id bottone invia
	$('#invia').click(function(){
		finalCheck();
	});
	
});

function finalCheck(){
//~ espressioni regolari di controllo
//~ quella per nome, cognome
	var regExCoNo = /^[a-zA-Z ]{1,50}$/;
//~ quella per l'email
	var regExEma = /\b[a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}\b/;
//~ qurella del telefono
	var regTel = /^[\d]{6,10}$/;
	
//~ reset dei colori della form
	$('#Nome').removeClass('error');
	$('#Cognome').removeClass('error');
	$('#submit_by').removeClass('error');
	$('#Telefono').removeClass('error');	
	$('#text_telefono').removeClass('error');	
	$('#text_Nome').removeClass('error');
	$('#text_Cognome').removeClass('error');
	$('#text_submit_by').removeClass('error');
	$('#text_trattamento').removeClass('error');
	$('#text_oggetto').removeClass('error');
	$('#text_captcha').removeClass('error');
	$('#captcha_code').removeClass('error');
	
//~ controlli se sono uguali a 0 o non corrispondono alla regEx ritorna un errore

	if(!regExCoNo.test($('#Nome').val())){
		$('#text_Nome').addClass('error');
		$('#Nome').addClass('error');
		$('#divError').html('il campo Nome deve essere composto da sole lettere fino ad un massimo di 50 caratteri').dialog('open');
		return;
	}
	if(!regExCoNo.test($('#Cognome').val())){	
		$('#text_Cognome').addClass('error');
		$('#Cognome').addClass('error');
		$('#divError').html('il campo Cognome deve essere composto da sole lettere fino ad un massimo di 50 caratteri').dialog('open');
		return;
	}
	if(($('#submit_by').val().length == 0)||(!regExEma.test($('#submit_by').val()))){
		$('#submit_by').addClass('error');
		$('#text_submit_by').addClass('error');
		$('#divError').html('inserire un email valida').dialog('open');
		return;
	}
	
	if($('#Telefono').val().length != 0){
		if(!regTel.test($('#Telefono').val())){
			$('#Telefono').addClass('error');
			$('#text_telefono').addClass('error');
			$('#divError').html('il numero di telefono non &egrave; valido').dialog('open');
			return;
		}
	}
	
	if($('#oggetto').val()==""){
		$('#text_oggetto').addClass('error');
		$('#divError').html('scegliere un oggetto').dialog('open');
		return;		
	}
	
	if($("input[@name='accetto']:checked").val() == "no"){
		$('#text_trattamento').addClass('error');
		$('#divError').html('Il trattamento dei dati personali deve essere accettato').dialog('open');
		return;
	}
	
	
	if($('#captcha_code').val().length == 0){
		//se il box del captcha è vuoto da errore
		$('#text_captcha').addClass('error');
		$('#captcha_code').addClass('error');
		$('#divError').html('devi scrivere la parola che &egrave; visualizzata nell\'immagine').dialog('open');
		return;
	} else {
		//altrimenti esegue un controllo tramite richiesta sincrona
		// ps i commenti con il segno ~ sono i codici di controllo!
		var $parola = "";
		parola = $('#captcha_code').val();
		var $answer = "";
	//~ alert(parola);
	//~ alert($('#captcha_code').val());
		$.ajax({
			type: "POST", 
			dataType: "text", 
			url: "script_controllo_captcha.php", 
			data: ({word:parola}), 
			async: false,
			success: function(data){
	//~ se il controllo ha successo...
				answer = data;
		//~ alert(data);
		//~ alert(answer);
			}
		});
	}
	if(answer == "ko"){
		// se ritorna con valore ko
		$('#text_captcha').addClass('error');
		$('#captcha_code').addClass('error');
		$('#divError').html('codice non corretto').dialog('open');
		return;
	}

//~ se tutto è andato bene fa il submit		
	//mettere l?id della form qui sotto
	$('#cont_mess').submit();
	return;
};
