function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function ApriPopup(URL,nome,proprieta) {
  finestra = window.open(URL,nome,proprieta);
  finestra.focus();
  return false;
}

function showhide(id) {
	var a = MM_findObj(id) ;
	if(a.style.display == "none") {
		a.style.display = "block";
	} else {
		a.style.display = "none";
	}
	return false;
}
 
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
  x=window.open(theURL,winName,features);
  x.name=winName;
  x.focus();
}
function show(element) {
	$(element).fadeIn("normal");
	return false;
}
function hide(element) {
	$(element).fadeOut("slow");
	return false;
}
function highlight(element) {
	$(element).css({ border:"1px solid gray", backgroundColor:"#FBFBFB"});
	$("#" + element.id + " h3").css({ color:"#333"});
	$("#" + element.id + " a").css({ color:"#333"});
	return false;
}
function restore(element) {
	$(element).css({ border:"1px solid lightgray", backgroundColor:"white"});
	$("#" + element.id + " h3").css({ color:"gray"});
	$("#" + element.id + " a").css({ color:"gray"});
	return false;
}
function checkRegForm(form){
	var valid = true;
	
	if (!checkObbligatorio(form.nome, 'nome')) valid = false;
	if (!checkObbligatorio(form.cognome, 'cognome')) valid = false;
	if (!checkObbligatorio(form.indirizzo, 'indirizzo')) valid = false;
	if (!checkObbligatorio(form.city, 'city')) valid = false;
	
	// controllo delibera privacy
	if (!form.privacy.checked) {
		$('#msg_privacy').html('Campo obbligatorio!');
		valid = false;
	} else {
		$('#msg_privacy').html('');
	}
	
	// controllo cap
	form.cap.value = trim(form.cap.value);
	if (form.cap.value != '') {
		if (!form.cap.value.match(/^(\S{3,})$/i)) {
			$('#msg_cap').html('Cap non valido!');
			valid = false;
		} else {
			$('#msg_cap').html('');
		}
	} else {
		$('#msg_cap').html('');
	}
	
	
	// controllo sigla provincia
	form.provincia.value = trim(form.provincia.value);
	if (!form.provincia.value.match(/^([a-z]{2})$/i)) {
		if (form.provincia.value == '') {
			$('#msg_provincia').html('Campo obbligatorio!');
		} else {
			$('#msg_provincia').html('Sigla provincia non valida!');
		}
		valid = false;
	} else {
		$('#msg_provincia').html('');
	}
	
	// controllo indirizzo e-mail
	form.email.value = trim(form.email.value);
	if (!form.email.value.match(/^\S+@\S+\.\S{2,}$/i)) {
		if (form.email.value == '') {
			$('#msg_email').html('Campo obbligatorio!');
		} else {
			$('#msg_email').html('Indirizzo e-mail non valido!');
		}
		valid = false;
	} else {
		$('#msg_email').html('');
	}
	
	// controllo numero di telefono
	form.telefono.value = trim(form.telefono.value);
	if (!form.telefono.value.match(/^(\d+)$/i)) {
		if (form.telefono.value == '') {
			$('#msg_telefono').html('Campo obbligatorio!');
		} else {
			$('#msg_telefono').html('Numero di telefono non valido! Inserire solo caratteri numerici.');
		}
		valid = false;
	} else {
		$('#msg_telefono').html('');
	}
	
	// controllo numero cellulare
	form.cellulare.value = trim(form.cellulare.value);
	if (form.cellulare.value != '') {
		if (!form.cellulare.value.match(/^(\d+)$/i)) {
			$('#msg_cellulare').html('Numero di telefono non valido!');
			valid = false;
		} else {
			$('#msg_cellulare').html('');
		}
	} else {
		$('#msg_cellulare').html('');
	}
	
	// controllo durata
	if (form.durata.selectedIndex == 0) {
		$('#msg_durata').html('Selezionare la durata dell\'abbonamento');
		valid = false;
	} else {
		$('#msg_durata').html('');
	}
	
	return valid;
}

function checkObbligatorio(field, name) {
	if (trim(field.value) == '') {
		$('#msg_' + name).html('Campo obbligatorio!');
		return false;
	} else {
		$('#msg_' + name).html('');
	}
	return true;
}

function trim(stringa) {
	stringa = stringa.replace(/^\s+|\s+$/g, '');
	stringa = stringa.replace(/  /g, '');
	return stringa;
}