function checkForm(fo){
	for(i=0; i<fo.elements.length; ++i) {
		if (fo.elements[i].check=="true"){
			if (fo.elements[i].value==""){
				alert('Inserire un valore per il campo <' + fo.elements[i].name + '>')
				fo.elements[i].focus();
				return false;
			}
		}
	}
	return true;
}

//setta la finestra alla grandezza dello schermo
function OnPanelResize(th){
	th.style.height = '800px'; 
	th.style.height = '600px'; 
}

//aggiungi ai preferiti
function addPage(strURL,strTitle) {
	window.external.addFavorite
	(strURL,strTitle);
}

//imposta come home page
function homepage(strURL) { 
	if(document.all)
	document.body.style.behavior='url(#default#homepage)';
	document.body.setHomePage(strURL);
}

//controlla numero di telefono
function numberOK(num){
	var i = 0;
	var letter;
	while (i < num.length){
		letter = num.charAt(i);
		if ((letter == '0') || (letter == '1') || (letter == '2') ||
		  (letter == '3') || (letter == '4') || (letter == '5') ||
		  (letter == '6') || (letter == '7') || (letter == '8') ||
		  (letter == '9')){
		     i++;
		} else {
			return false;
		}
	}
	return true;
}
function TelNumberOK(th){
	data=th.value;
	var size = data.length;
	var ReturnValue = true;
	var italiano    = false;
	var index  = 0;
	var prefix = 0;
	var space  = 0;
	var num;
	var CellPrefix = "/333|334|335|336|337|338|339|330" +
	  "|360|368|340|347|348|349|320|328|329|380|388|389|392/g";
	if (data == ""){
		return true;
	}
	// controlla che il primo carattere sia un + e che
	// ci sia almeno uno spazio
	if ((data.indexOf('+', 0) != 0) || (data.indexOf(' ', 0) == -1)){
		ReturnValue = false;
	}else{
		// aggiunge uno spazio in fondo alla stringa
		data = data + ' ';
		size++;
		// cerca il primo spazio
		space = data.indexOf(' ', index);
		// fintanto che ci sono degli spazi e non c'è un errore
		while ((space != -1) && (space != '') && (ReturnValue == true)){
			// legge il numero
			num = data.substring(index + 1, space);
			if ((num == '') || !numberOK(num)){
				ReturnValue = false;
			}else{
				// controlla se il primo prefisso è italiano
				if ((prefix == 0) && (num == 39))
				   italiano = true;
					// se è un numero per l'italia il secondo prefisso
					// deve iniziare con uno zero solo se non è un numero di cellulare
					if ((prefix == 1) && (italiano == true) && (num.charAt(0) == 0)){
						// controlla che non sia un numero di cellulare
						if (num.match(CellPrefix)){
							ReturnValue = false;
						}
					}
				index = space;
				space = data.indexOf(' ', index + 1);
				prefix ++;
			}
		}
	}
	if ((ReturnValue == true) && (prefix == 3)){
		return true;
	}else{
		alert ("Numero non valido!\n (Inserisci un numero del tipo +39 06 315000)");
		th.focus();
		return false;
	}
}

//controllo numero intero
function isValidInt(s)
{
    var i, c, p;
   	var ReturnValue = true;
	p=s.value;
    for (i=0; i<p.length; i++) {
            c = p.charCodeAt(i);
            if ((c < 48) || (c > 57))
                    ReturnValue = false;
    }
	if (ReturnValue == true){
		return true;
	}else{
		alert ("Numero non valido!");
		s.focus();
		return false;
	}        
}

//data (gg/mm/yyyy)
function controlla_data(th){
	if (th.value!=""){
		obj=th.value;
		while (obj != obj.replace("/","")){obj = obj.replace("/","")}
		var data = new Date(obj.substr(4),new Number(obj.substr(2,2)) -1,obj.substr(0,2));		
		dmm=(data.getMonth()+1).toString();
		dmm=dmm.length==1?"0"+dmm:dmm
		dgg=data.getDate().toString();
		dgg=dgg.length==1?"0"+dgg:dgg
		daa=data.getFullYear().toString();
		dddata=dgg+""+dmm+""+daa
		if (dddata != obj){
			alert("Verificare la data inserita");
			th.focus(); //...viene ridato il focus per il reinserimento
		}else{
			th.value=dgg+"/"+dmm+"/"+daa
		}
	}
}

function eMailCheck(th) {
	var str=th.value;
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str=="")
		return true;
	if (str.indexOf(at)==-1){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	 }
	
	 if (str.indexOf(" ")!=-1){
	   alert("Indirizzo E-Mail non valido")
	   th.focus();
	   return false
	 }
	 return true					
}