function controlli()
{
	if (document.dati.user.value == "") 
		{
			alert("Inserire una Login per poter procedere!");
			document.dati.user.focus();
			return false;
		} 
	else if (document.dati.psw.value == "") 
		{
			alert("Inserire una Password poter procedere!");
			document.dati.psw.focus();
			return false;
		} 
	else 
		{
			return true;
		}
}

function guardone()
{
	var1="&fromweb=http://www.guardoneitalia.it/valenew/web.asp"
	var2="&fromweb=http://127.0.0.1/web.asp"
	var3="&fromweb=http://www.guardoneitalia.it/web.asp"
	
	if (formgo.name_go.value=="")
		{
			alert("Inserire una Login per poter procedere!")
			formgo.name_go.value="";
			formgo.name_go.focus();
			return false; 
		}
	else if (formgo.psw_go.value=="")
		{
			alert("Inserire una Password poter procedere!")
			formgo.psw_go.value="";
			formgo.psw_go.focus();
			return false;  
		}
	else 
		{
			document.formgo.action = "http://www.getposition.com/default.asp?group=GO&name=" +
			formgo.name_go.value + "&password=" + formgo.psw_go.value + var3;
		    document.formgo.submit;
		}
}

function renault()
{
	var1="&fromweb=http://www.guardoneitalia.it/valenew/web.asp?PwdErr=1"
	var2="&fromweb=http://127.0.0.1/web.asp?PwdErr=1"
	var3="&fromweb=http://www.guardoneitalia.it/web.asp?PwdErr=1"
	document.formrenault.action = "http://www.getposition.com/default.asp?group=GO&name=" +
	formrenault.utente.value + "&password=" + formrenault.pass.value + var3 ;
	document.formrenault.submit
}

function dealer()
{
	document.formrenault.action = "renault.asp";
	document.formrenault.submit
}

function assicurazione()
{
	if (document.ass.prov.value == "-") 
	{
		alert('Seleziona la provincia');
		return false;
	} 
	else if ((document.ass.val.value == "") || (isNaN(document.ass.val.value))) 
	{
		alert('Il valore dell´auto non è corretto o non è stato inserito');
		document.ass.val.value="";
		ass.val.focus();
		return false;
	} 
	else if (document.ass.serv.value == "-") 
	{
		alert('Seleziona un servizio');
		return false;
	} 
	else if ((document.ass.cop[0].checked == false) && (document.ass.cop[1].checked == false) && (document.ass.cop[2].checked == false))
	{
		alert('Non hai specificato se vuoi delle coperture');
		return false;
	}
	else 
	{
		return true;
	}
}

function assicurazione3()
{
	if (document.ass.veic.value == "-") 
	{
		alert('Seleziona il veicolo');
		return false;
	}
	else if ((document.ass.val.value == "") || (isNaN(document.ass.val.value))) 
	{
		alert('Il valore dell´auto non è corretto o non è stato inserito');
		document.ass.val.value="";
		ass.val.focus();
		return false;
	} 
	else if (document.ass.serv.value == "-") 
	{
		alert('Seleziona un servizio');
		return false;
	} 
	else if ((document.ass.cop[0].checked == false) && (document.ass.cop[1].checked == false) && (document.ass.cop[2].checked == false))
	{
		alert('Non hai specificato se vuoi delle coperture');
		return false;
	}
	else 
	{
		return true;
	}
}

function trim(stringa)
{    
	while (stringa.substring(0,1) == ' ')
		{stringa = stringa.substring(1,stringa.length);}
	while (stringa.substring(stringa.length-1, stringa.length) == ' ')
		{stringa = stringa.substring(0,stringa.length-1);}
	return stringa;
}

function informazioni()
{
	if (trim(document.info.nome.value)=="")
		{
			alert("Inserire il nome.")
			info.nome.value="";
			info.nome.focus();
			return false; 
		}
	else if (trim(document.info.tel.value)=="" || isNaN(document.info.tel.value))
		{
			alert("Inserisci un numero di telefono valido (solo carateri numerici).")
			info.tel.value="";
			info.tel.focus();
			return false; 
		}
	else if (trim(document.info.fax.value)=="" && trim(document.info.email.value)=="")
		{
			alert("Inserisci il numero di fax o l'indirizzo e-mail.")
			info.fax.value="";
			info.fax.focus();
			return false; 
		}
	else if ((trim(document.info.fax.value)="" ) && isNaN(document.info.fax.value))
		{
			alert("Inserisci un numero di fax valido (solo carateri numerici).")
			info.fax.value="";
			info.fax.focus();
			return false; 
		}
	else if (trim(document.info.info.value)=="" || !isNaN(document.info.info.value))
		{
			alert("Inserire una richiesta.")
			info.info.value="";
			info.info.focus();
			return false; 
		}
	else 
		{
			document.info.action = "mail.asp";
			document.info.submit;
		}
}

function installatori()
{
	if (document.inst.nome.value == "") 
		{
			alert('Inserisci la ragione sociale');
			inst.nome.value = "";
			inst.nome.focus();
			return false;
		} 
	else if (document.inst.IDCUSTCAT.value == "" || isNaN(document.inst.IDCUSTCAT.value)) 
		{
			alert("Inserisci l'ID CATEGORIA CLIENTE! Deve essere un valore numerico.");
			inst.IDCUSTCAT.value = "";
			inst.IDCUSTCAT.focus();
			return false;
		} 
	else if (document.inst.IDPDV.value == "" || isNaN(document.inst.IDPDV.value)) 
		{
			alert("Inserisci l'ID PUNTO VENDITA! Deve essere un valore numerico.");
			inst.IDPDV.value = "";
			inst.IDPDV.focus();
			return false;
		} 	
	else if (document.inst.user.value == "") 
		{
			alert("Inserisci l'username");
			inst.user.value = "";
			inst.user.focus();
			return false;
		} 
	else if (document.inst.password.value == "") 
		{
			alert("Inserisci la password");
			inst.password.value = "";
			inst.password.focus();
			return false;
		} 
	else if (document.inst.confpassword.value == "") 
		{
			alert("Inserisci la conferma della password");
			inst.confpassword.value = "";
			inst.confpassword.focus();
			return false;
		} 
	else if (document.inst.password.value != document.inst.confpassword.value) 
		{
			alert("Il campo password e la conferma non corrispondono");
			inst.password.value = "";
			inst.confpassword.value="";
			inst.password.focus();
			return false;
		} 
	else if (document.inst.listino.value == "") 
		{
			alert("Inserisci il listino");
			inst.listino.value = "";
			inst.listino.focus();
			return false;
		} 
	else 
		{
			return true;
		}
}

function servizi()
{
	if (serv.id.value=="" || isNaN(document.serv.id.value))
		{
			alert("Inserire l' ID del servizio.")
			serv.id.value="";
			serv.id.focus();
			return false; 
		}
	else if (serv.nome.value=="")
		{
			alert("Inserire il nome del servizio.")
			serv.nome.value="";
			serv.nome.focus();
			return false; 
		}
	else if (serv.prezzo.value=="" || isNaN(document.serv.prezzo.value))
		{
			alert("Inserire il prezzo del servizio.")
			serv.prezzo.value="";
			serv.prezzo.focus();
			return false; 
		}
	else if (serv.vhl.value=="")
		{
			alert("Selezionare almeno un tipo di veicolo.")
			serv.vhl.value="";
			serv.vhl.focus();
			return false;  
		}
	else 
		{
			document.serv.action = "salva_servizio.asp";
			document.serv.submit;
		}
}

function elenco()
{
	if (installatori.INST.value=="")
		{
			alert("Selezionare almeno un'installatore.")
			installatori.INST.value="";
			installatori.INST.focus();
			return false; 
		}
	else 
		{
			document.installatori.action = "salva_inst.asp";
			document.installatori.submit;
		}
}

function mail()
{
	mailt = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
	if (!mail.test(document.form_mail.mail.value)) 
	{
		alert("Non hai inserito l'indirizzo email oppure l'indirizzo inserito non è valido.");
		form_mail.mail.focus();
		return false;
	} 
	else 
	{
		return true;
	}
}

function categoria()
{
	if (document.cat.nome.value=="") 
	{
		alert("Non hai inserito la categoria.");
		cat.nome.focus();
		return false;
	} 
	else 
	{
		return true;
	}
}

function PERIF()
{
	cod = /^([a-zA-Z0-9]{4})+$/;
		
	if (CFK.NOME_C.value=="")
		{
			alert("Inserire il nome della configurazione.")
			CFK.NOME_C.focus();
			return false; 
		}
	else if (CFK.CODE_C.value=="")
		{
			alert("Inserire il Codice Periferica.")
			CFK.CODE_C.focus();
			return false; 
		}
	else if (!cod.test(document.CFK.CODE_C.value)) 
	{
		alert('Il Codice Periferica deve essere di 4 cifre e può contenere solo i caratteri "a->z A->Z e 0->9"');
		CFK.CODE_C.value="";
		CFK.CODE_C.focus();
		return false;
	} 
	else if (CFK.pdf.value=="")
		{
			alert("Selezionare almeno un file pdf.")
			CFK.pdf.focus();
			return false;  
		}
	else 
		{
			document.CFK.action = "salva_cfk.asp";
			document.CFK.submit;
		}
}
	
function PERIF1()
{
	for(i=document.CFK.ID_P.length-1;i>-1;i--)
	{
		if(document.CFK.ID_P.options[i].selected==true)
		{
			location.replace('Area_CFK.asp?op=new&ID_P='+document.CFK.ID_P[i].value+'&NOME_C='+document.CFK.NOME_C.value+'&NOTE_C='+document.CFK.NOTE_C.value+'&CODE_C='+document.CFK.CODE_C.value)
		}
	}
}

function PERIF2()
{
	for(i=document.CFK.ID_P.length-1;i>-1;i--)
	{
		if(document.CFK.ID_P.options[i].selected==true)
		{
			location.replace('Area_CFK.asp?op=mod&ID_P='+document.CFK.ID_P[i].value+'&NOME_C='+document.CFK.NOME_C.value+'&NOTE_C='+document.CFK.NOTE_C.value+'&pdf='+document.CFK.pdf.value+'&ID='+document.CFK.ID.value+'&CODE_C='+document.CFK.CODE_C.value)
		}
	}
}

function periferiche()
{
	if (unita.NOME.value=="")
		{
			alert("Inserire il nome della Periferica.")
			unita.NOME.value="";
			unita.NOME.focus();
			return false; 
		}
	else if (unita.MAXIN.value=="" || isNaN(document.unita.MAXIN.value) )
		{
			alert("Inserire il Numero Massimo di Ingressi.")
			unita.MAXIN.value="";
			unita.MAXIN.focus();
			return false;  
		}
	else if (unita.MAXOUT.value=="" || isNaN(document.unita.MAXOUT.value) )
		{
			alert("Inserire il Numero Massimo di Uscite.")
			unita.MAXOUT.value="";
			unita.MAXOUT.focus();
			return false;  
		}
	else 
		{
			document.unita.action = "salva_periferica.asp";
			document.unita.submit;
		}
}

function ingressi()
{
	if (ingr.NOME.value=="")
		{
			alert("Inserire il nome dell' Ingresso.")
			ingr.NOME.value="";
			ingr.NOME.focus();
			return false; 
		}
	else 
		{
			document.ingr.action = "salva_ingressi.asp";
			document.ingr.submit;
		}
}

function uscite()
{
	if (out.NOME.value=="")
		{
			alert("Inserire il nome dell' Uscita.")
			out.NOME.value="";
			out.NOME.focus();
			return false; 
		}
	else 
		{
			document.out.action = "salva_uscite.asp";
			document.out.submit;
		}
}

function accessori()
{
	if (acc.NOME.value=="")
		{
			alert("Inserire il nome dell' Uscita.")
			acc.NOME.value="";
			acc.NOME.focus();
			return false; 
		}
	else 
		{
			document.acc.action = "salva_accessori.asp";
			document.oaccut.submit;
		}
}

function faseA()
{
	if (document.ffaseA.tipov.value == "") 
	{
		alert('Seleziona un tipo di veicolo');
		ffaseA.tipov.focus();
		return false;
	}
	else if (document.ffaseA.serv.value == "") 
	{
		alert('Seleziona un servizio');
		ffaseA.serv.focus();
		return false;
	} 
	else if ((document.ffaseA.rbpag[0].checked == false) && (document.ffaseA.rbpag[1].checked == false) && (document.ffaseA.rbpag[2].checked == false)) 
	{
		alert('Seleziona un tipo di pagamento');
		document.ffaseA.rbpag[0].focus();
		return false;
	}
	else
	{
		return true;
	}
}

function tipiveicoli(){
	for(i=document.ffaseA.tipov.length-1;i>-1;i--)
	{
		if(document.ffaseA.tipov.options[i].selected==true)
		{
			location.replace('faseA.asp?id_tv='+document.ffaseA.tipov[i].value)
		}
	}
}
function prezzo(id_tv){
	for(i=document.ffaseA.serv.length-1;i>-1;i--)
	{
		if(document.ffaseA.serv.options[i].selected==true)
		{
			location.replace('faseA.asp?id_tv='+id_tv+'&id_se='+document.ffaseA.serv[i].value)
		}
	}
}

function faseB1()
{
	//sistemare l'espressione regolare seguente
	targaL = /^([a-zA-Z])+$/;
	targaN = /^([0-9])+$/;
	
	if (document.ffaseB1.marca.value == "") 
	{
		alert('Inserisci la marca del veicolo');
		ffaseB1.marca.value="";
		ffaseB1.marca.focus();
		return false;
	} 
	else if (document.ffaseB1.modello.value == "") 
	{
		alert('Inserisci il tipo-modello del veicolo');
		ffaseB1.modello.value = "";
		ffaseB1.modello.focus();
		return false;
	} 
	else if (document.ffaseB1.colore.value == "") 
	{
		alert('Inserisci il colore del veicolo');
		ffaseB1.colore.value = "";
		ffaseB1.colore.focus();
		return false;
	}  
	else if (((document.ffaseB1.targa.value) == "") && ((document.ffaseB1.telaio.value) == "")) 
	{
		alert('Inserisci la targa o il telaio del veicolo');
		ffaseB1.targa.value = "";
		ffaseB1.targa.focus();
		return false;
	} 
	else if (document.ffaseB1.targa.value == " ") 
	{
		alert('Inserisci la targa del veicolo');
		ffaseB1.targa.value = "";
		ffaseB1.targa.focus();
		return false;
	} 
	else if(targaL.test(document.ffaseB1.targa.value)) 
	{
		alert('Inserisci una targa valida');
		ffaseB1.targa.value="";
		ffaseB1.targa.focus();
		return false;
	} 
	else if(targaN.test(document.ffaseB1.targa.value)) 
	{
		alert('Inserisci una targa valida');
		ffaseB1.targa.value="";
		ffaseB1.targa.focus();
		return false;
	} 
	else 
	{
		return true;
	}
}

function faseB2()
{
	cod = /^([a-zA-Z0-9]{8})+$/;
	if (!cod.test(document.ffaseB2.cod.value)) 
	{
		alert('Il codice unità etichetta deve essere di 8 cifre e può contenere solo i caratteri "a->z A->Z e 0->9"');
		ffaseB2.cod.value="";
		ffaseB2.cod.focus();
		return false;
	} 
	else if (document.ffaseB2.gestore.value == "") 
	{
		alert('Inserisci il gestore telefonico');
		ffaseB2.gestore.value = "";
		ffaseB2.gestore.focus();
		return false;
	} 
	else if ((document.ffaseB2.voce.value == "") && (document.ffaseB2.data.value == "")) 
	{
		alert('Inserisci ALMENO uno tra il numero telefonico Voce e il numero telefonico Dati');
		ffaseB2.voce.focus();
		return false;
	} 
	else if (isNaN(document.ffaseB2.voce.value)) 
	{
		alert('Inserisci il numero telefonico Voce in maniera corretta');
		ffaseB2.voce.value="";
		ffaseB2.voce.focus();
		return false;
	} 
	else if (isNaN(document.ffaseB2.data.value)) 
	{
		alert('Inserisci il numero telefonico Data in maniera corretta');
		ffaseB2.data.value="";
		ffaseB2.data.focus();
		return false;
	} 
	else if (document.ffaseB2.ricaricabile.value == "8") 
	{
		alert('Inserisci la tipologia di tessera');
		ffaseB2.ricaricabile.value = "8";
		ffaseB2.ricaricabile.focus();
		return false;
	} 
	else 
	{
		return true;
	}
}

function faseB3_A()
{
	
	var validi, i, s, set1, set2, setpari, setdisp, cf;
	
	vIva=document.ffaseB3_A.fp.value
	cod = /^[a-zA-Z]{6}\d{2}[a-zA-Z]\d{2}[a-zA-Z]\d{3}[a-zA-Z]$/;
	if (!cod.test(vIva))
	{
		
		
		if ((controlloIVA(vIva)) && !(vIva=="00000000000"))
		{

			if (document.ffaseB3_A.PIVA.value=="")
			 {
			 	alert("Non hai inserito il C.F. AZIENDA. Se non si dispone di questo dato, copiare la P.Iva nel campo C.F. AZIENDA.");
				 ffaseB3_A.PIVA.value="";
				 ffaseB3_A.PIVA.focus();
				 return false;
			}
			 else 
			{
			 		if ((controlloIVA(document.ffaseB3_A.PIVA.value)) && !(document.ffaseB3_A.PIVA.value=="00000000000"))
					{
						document.getElementById('isIVA').value='SI';
					}
					else
					{
						cf=	document.ffaseB3_A.PIVA.value
						if( cf == '' )  
						{alert("Non è stato inserito il Codice Fiscale.");
						return false;}
					
						cf = cf.toUpperCase();
						if( cf.length != 16 )
						{alert("La lunghezza del codice fiscale ( " + cf.length + " ) non è\n"
						+"corretta: il codice fiscale dovrebbe essere lungo\n"
						+"esattamente 16 caratteri.\n");
						return false;}
						validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
					
						for( i = 0; i < 16; i++ )
						{
							if( validi.indexOf( cf.charAt(i) ) == -1 )
								{alert("Il codice fiscale contiene un carattere non valido `" +
								cf.charAt(i) +
								"'.\nI caratteri validi sono le lettere e le cifre.\n");
								return false;}
						}
						
						set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
						set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
						setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
						setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
						s = 0;
						for( i = 1; i <= 13; i += 2 )
							s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
							
						for( i = 0; i <= 14; i += 2 )
							s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
						
						if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
							{alert("Il codice fiscale non è corretto:\n"+
							"il codice di controllo non corrisponde.\n");
							return false;}
					}
			 }
			 document.getElementById('isIVA').value='SI';
		}
		else
		{
			cf= document.ffaseB3_A.PIVA.value	
			if( cf == '' )  
			{alert("Non è stato inserito il Codice Fiscale.");
			return false;}
		
			cf = cf.toUpperCase();
			if( cf.length != 16 )
			{alert("La lunghezza del codice fiscale non è\n"
			+"corretta: il codice fiscale dovrebbe essere lungo\n"
			+"esattamente 16 caratteri.\n");
			return false;}
			validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
		
			for( i = 0; i < 16; i++ )
			{
				if( validi.indexOf( cf.charAt(i) ) == -1 )
					{alert("Il codice fiscale contiene un carattere non valido `" +
					cf.charAt(i) +
					"'.\nI caratteri validi sono le lettere e le cifre.\n");
					return false;}
			}
			
			set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
			setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
			s = 0;
			for( i = 1; i <= 13; i += 2 )
				s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
				
			for( i = 0; i <= 14; i += 2 )
				s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
			
			if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
				{alert("Il codice fiscale non è corretto:\n"+
				"il codice di controllo non corrisponde.\n");
				return false;}

          	
		}
	}
	else
	{		
		cf=vIva		
		if( cf == '' )  
			{alert("Non è stato inserito il Codice Fiscale.");
			return false;}
			
		cf = cf.toUpperCase();
		if( cf.length != 16 )
			{alert("La lunghezza del codice fiscale non è\n"
			+"corretta: il codice fiscale dovrebbe essere lungo\n"
			+"esattamente 16 caratteri.\n");
			return false;}
		validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
		
		for( i = 0; i < 16; i++ )
			{
				if( validi.indexOf( cf.charAt(i) ) == -1 )
					{alert("Il codice fiscale contiene un carattere non valido `" +
					cf.charAt(i) +
					"'.\nI caratteri validi sono le lettere e le cifre.\n");
					return false;}
			}
			
		set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
		setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
		s = 0;
		for( i = 1; i <= 13; i += 2 )
			s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
			
		for( i = 0; i <= 14; i += 2 )
			s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
		
		if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
			{alert("Il codice fiscale non è corretto:\n"+
			"il codice di controllo non corrisponde K\n");
			return false;}

       cf=document.ffaseB3_A.PIVA.value
       if ( cf != '' )  
         {alert("Partita Iva non ammessa per cliente privato!");
         return false;}

	}
}

function ControlloUltimaLettera(cf)
{
	var validi, i, s, set1, set2, setpari, setdisp;
	if( cf == '' )  
		{alert("Non è stato insserito il Codice Fiscale.");
		return false;}
	cf = cf.toUpperCase();
	if( cf.length != 16 )
		return "La lunghezza del codice fiscale non è\n"
		+"corretta: il codice fiscale dovrebbe essere lungo\n"
		+"esattamente 16 caratteri.\n";
	validi = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	for( i = 0; i < 16; i++ ){
		if( validi.indexOf( cf.charAt(i) ) == -1 )
			return "Il codice fiscale contiene un carattere non valido `" +
				cf.charAt(i) +
				"'.\nI caratteri validi sono le lettere e le cifre.\n";
	}
	set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
	setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
	s = 0;
	for( i = 1; i <= 13; i += 2 )
		s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
	for( i = 0; i <= 14; i += 2 )
		s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
	if( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
		return "Il codice fiscale non è corretto:\n"+
			"il codice di controllo non corrisponde.\n";
	return "";
}


function controlloIVA(vIVA)
{
iva = /^([0-9]{11})+$/;
if (iva.test(vIVA))
	{
	var i=0;
	var s = 0;
	for( i = 0; i <= 9; i += 2 )
		s += vIVA.charCodeAt(i) - '0'.charCodeAt(0);
	for( i = 1; i <= 9; i += 2 ){
		c = 2*( vIVA.charCodeAt(i) - '0'.charCodeAt(0) );
		if( c > 9 )  c = c - 9;
		s += c;}
	if( ( 10 - s%10 )%10 != vIVA.charCodeAt(10) - '0'.charCodeAt(0) )
		return false;
	else
		return true;
	}
else
	return false;
}

function controlloMailFax(){
var vFax=false;
var vMail=false;
//controllo se è stato inserito il numero di fax
if (document.ffaseB3_B.fax1.value!=""){
	vFax=true;
	//controllo che il numero di fax sia formalmente corretto
	if (isNaN(document.ffaseB3_B.fax1.value)){
		alert('Hai utilizzato dei caratteri non validi nel numero di fax');
		ffaseB3_B.fax1.value="";
		ffaseB3_B.fax1.focus();
		return false;}
}
//controllo se è stato inserita l'email
if(document.ffaseB3_B.mail.value!=""){
	//controllo che l'indirizzo email sia formalmente corretto
	vMail=true
	if (!mail.test(document.ffaseB3_B.mail.value)) {
		alert("L'indirizzo E-MAIL inserito non è valido");
		ffaseB3_B.mail.value="";
		ffaseB3_B.mail.focus();
		return false;
	}
}
if(vFax==false&&vMail==false)
	{
	alert("Inserisci il Numero di FAX o l'Indirizzo Email");
	ffaseB3_B.fax1.focus();
	return false;
	}
else
	return true;
}

function faseB3_B()
{
	mail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
	if (document.ffaseB3_B.cognomerag.value == "") 
	{
		alert('Inserisci Nome Cognome / Ragione Sociale');
		ffaseB3_B.cognomerag.focus();
		return false;
	} 
	else if (document.ffaseB3_B.prov.value == "") 
	{
		alert('Inserisci la Provincia.');
		ffaseB3_B.prov.focus();
		return false;
	} 
	else if (document.ffaseB3_B.citta.value == "") 
	{
		alert('Inserisci la Città.');
		ffaseB3_B.citta.focus();
		return false;
	} 
	else if (document.ffaseB3_B.cap.value == "") 
	{
		alert('Inserisci il CAP.');
		ffaseB3_B.cap.focus();
		return false;
	} 
	else if (document.ffaseB3_B.ind.value == "") 
	{
		alert("Inserisci l'indirizzo con numero civico");
		ffaseB3_B.ind.focus();
		return false;
	} 
	else if(!controlloMailFax())
	{
		return false;
	}
	else
	{
		return true;
	}
}

function COMUNE()
{
	for(i=document.ffaseB3_B.citta.length-1;i>-1;i--)
	{
		if(document.ffaseB3_B.citta.options[i].selected==true)
		{
			location.replace('faseB3_B.asp?citta='+document.ffaseB3_B.citta[i].value
																			+'&prov='+document.ffaseB3_B.prov.value
																			+'&fp='+document.ffaseB3_B.fp.value
																			+'&cognomerag='+document.ffaseB3_B.cognomerag.value
																			+'&ind='+document.ffaseB3_B.ind.value
																			+'&PIVA='+document.ffaseB3_B.PIVA.value
																			+'&mail='+document.ffaseB3_B.mail.value)
		}
	}
}

function PROVINCIA()
{
	location.replace('faseB3_B.asp?prov='+document.ffaseB3_B.prov.value
					 +'&fp='+document.ffaseB3_B.fp.value
					 +'&cognomerag='+document.ffaseB3_B.cognomerag.value
					 +'&ind='+document.ffaseB3_B.ind.value
					 +'&PIVA='+document.ffaseB3_B.PIVA.value
					 +'&mail='+document.ffaseB3_B.mail.value)
}

function CAP()
{
	for(i=document.ffaseB3_B.cap.length-1;i>-1;i--)
	{
		if(document.ffaseB3_B.cap.options[i].selected==true)
		{
			location.replace('faseB3_B.asp?cap='+document.ffaseB3_B.cap[i].value
																		+'&prov='+document.ffaseB3_B.prov.value
																		+'&fp='+document.ffaseB3_B.fp.value
																		+'&cognomerag='+document.ffaseB3_B.cognomerag.value
																		+'&ind='+document.ffaseB3_B.ind.value
																		+'&PIVA='+document.ffaseB3_B.PIVA.value
																		+'&mail='+document.ffaseB3_B.mail.value)
		}
	}
}

function faseB4_A()
{
	cod = /^[a-zA-Z]{6}\d{2}[a-zA-Z]\d{2}[a-zA-Z]\d{3}[a-zA-Z]$/
	if (document.ffaseB4_A.banca.value == "") 
	{
		alert('Inserisci la banca');
		ffaseB4_A.banca.focus();
		return false;
	} 
	else if (document.ffaseB4_A.agenzia.value == "") 
	{
		alert("Inserisci l'agenzia");
		ffaseB4_A.agenzia.focus();
		return false;
	} 
	else if ((document.ffaseB4_A.abi.value == "") || (isNaN(document.ffaseB4_A.abi.value)) || (document.ffaseB4_A.abi.value.length<4))
	{
		alert("Non hai inserito il codice ABI o hai utilizzato dei caratteri non validi");
		ffaseB4_A.abi.focus();
		return false;
	} 
	else if ((document.ffaseB4_A.cab.value == "") || (isNaN(document.ffaseB4_A.cab.value)) || (document.ffaseB4_A.cab.value.length<4))
	{
		alert("Non hai inserito il codice CAB o hai utilizzato dei caratteri non validi");
		ffaseB4_A.cab.focus();
		return false;
	} 
	else if (document.ffaseB4_A.conto.value == "") 
	{
		alert('Inserisci il conto corrente');
		ffaseB4_A.conto.focus();
		return false;
	} 
	else if ((document.ffaseB4_A.legale.value == "") && (document.ffaseB4_a.controllo.value=="true"))
	{
		alert('Inserisci il legale rappresentante/intestatario');
		ffaseB4_A.legale.focus();
		return false;
	} 
	else if ((!(cod.test(document.ffaseB4_A.codlegale.value)&&ControlloUltimaLettera(document.ffaseB4_A.codlegale.value))) && (document.ffaseB4_a.controllo.value=="true"))
	{
		alert('Non hai inserito il codice fiscale del legale rappresentante/intestatario oppure è errato');
		ffaseB4_A.codlegale.focus();
		return false;
	} 
	else 
	{
		return true;
	}
}

function faseB4_B()
{
    ncarta = /^([0-9]{13,20})+$/;
	scarta = /^([0-9]{2})+\/([0-9]{4})+$/;
	ThisDate = new Date();
	if (document.ffaseB4_B.tipocarta.value == "") 
	{
		alert('Inserisci il tipo di carta di credito');
		document.ffaseB4_B.tipocarta.focus();
		return false;
	}
	else if (!ncarta.test(document.ffaseB4_B.ncarta.value)) 
	{
		alert("Non hai inserito il numero di carta di credito oppure non è stato inserito correttamente");
		document.ffaseB4_B.ncarta.focus();
		return false;
	}
	else if (!cCCredito(document.ffaseB4_B.ncarta.value)) 
	{
 		alert("Il numero della carta di credito è errato");
		document.ffaseB4_B.ncarta.focus();
		return false;
	}
	else if (document.ffaseB4_B.scadcarta.value == ""){
 		alert("Non hai inserito la scadenza della carta di credito!");
		document.ffaseB4_B.scadcarta.focus();
		return false;
	} 
	else 
	{
		var vTipoCarta=tipoCC(document.ffaseB4_B.ncarta.value)
		if(vTipoCarta=="")
			return confirm("Il numero risulta valido ma non è possibile determinare il tipo di carta. Si vuole confermare il numero di carta di credito "+document.ffaseB4_B.ncarta.value+"?");
		else
			if(document.ffaseB4_B.tipocarta.value!=vTipoCarta)
			{
				alert("La carta non risulta essere del tipo selezionato");
				document.ffaseB4_B.tipocarta.focus();
				return false;
			}
			else
				return true;
	}
}

function tipoCC(num)
{
var Header;
var CardType="";
switch(parseInt(num.charAt(0)))
{
case 5:
	Header = num.substr(0,2)
	if ((Header >= 51)&&(Header<=55)&&(num.length==16))
		CardType = "MasterCard";
break;
case 4:
	if((num.length == 13)||(num.length==16))
		CardType = "Visa";
break;
case 3:
	Header = num.substr(0,3)
	if((Header >= 340)&&(Header <= 379)&&(num.length==15))
		CardType = "Amex";
	if(((Header >= 300)&&(Header <= 305)&&(num.length==14))||((Header >= 360)&&(Header <= 369)&&(num.length==14))||((Header>=380)&&(Header<=389)&&(num.length==14)))
	  CardType = "Diners Club"
break;
}
return CardType
}

function cCCredito(num)
{
var con
var tot=parseInt(0);
con=(num.length%2!=0);
for(i=0;i<num.length;i++)
{
	if(con)
	{
		con=!con;
		tot+=parseInt(num.charAt(i));
	}
	else
	{
	con=!con
	par=(parseInt(num.charAt(i))*2);
		if (par>9)
			par-=9;
		tot+=par; 
	}
}
	return (tot%10==0)
}

function faseB5()
{
	if (document.ffaseB5.privacy[1].checked == false) 
	{
		alert('Per potere proseguire devi accettare le condizioni\ngenerali di abbonamento comprendenti la privacy');
		return false;
	} 
	else if (document.ffaseB5.privacy2[1].checked == false)
	{
		alert('Per potere proseguire devi accettare le clausole vessatorie');
		return false;
	}
}

function faseD1()
{
	if (document.IO.ID.value == 0) 
	{
		alert("Attenzione! Si è deciso di non compilare il certificato d'installazione. Compilarlo manualmente ed inviarlo a GuardOne Italia per effettuare il collaudo.");
	}
	else
	{
		return true;
	}
}

function sistemi()
{
	for(i=document.CFK.PERIF.length-1;i>-1;i--)
	{
		if(document.CFK.PERIF.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&id_p='+document.CFK.PERIF[i].value);
		}
	}
}

function INuno()
{
	for(i=document.CFK.IN1.length-1;i>-1;i--)
	{
		if(document.CFK.IN1.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&IN1='+document.CFK.IN1[i].value)
		}
	}
}

function INdue()
{
	for(i=document.CFK.IN2.length-1;i>-1;i--)
	{
		if(document.CFK.IN2.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&IN2='+document.CFK.IN2[i].value)
		}
	}
}

function INtre()
{
	for(i=document.CFK.IN3.length-1;i>-1;i--)
	{
		if(document.CFK.IN3.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&IN3='+document.CFK.IN3[i].value)
		}
	}
}

function INquattro()
{
	for(i=document.CFK.IN4.length-1;i>-1;i--)
	{
		if(document.CFK.IN4.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&IN4='+document.CFK.IN4[i].value)
		}
	}
}

function INcinque(
){
	for(i=document.CFK.IN5.length-1;i>-1;i--)
	{
		if(document.CFK.IN5.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&IN5='+document.CFK.IN5[i].value)
		}
	}
}

function OUTuno()
{
	for(i=document.CFK.OUT1.length-1;i>-1;i--)
	{
		if(document.CFK.OUT1.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&OUT1='+document.CFK.OUT1[i].value)
		}
	}
}

function OUTdue()
{
	for(i=document.CFK.OUT2.length-1;i>-1;i--)
	{
		if(document.CFK.OUT2.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&OUT2='+document.CFK.OUT2[i].value)
		}
	}
}

function OUTtre()
{
	for(i=document.CFK.OUT3.length-1;i>-1;i--)
	{
		if(document.CFK.OUT3.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&OUT3='+document.CFK.OUT3[i].value)
		}
	}
}

function OUTquattro()
{
	for(i=document.CFK.OUT4.length-1;i>-1;i--)
	{
		if(document.CFK.OUT4.options[i].selected==true)
		{
			location.replace('faseD1_A.asp?modo=1&OUT4='+document.CFK.OUT4[i].value)
		}
	}
}

var stampa1=false
var stampa2=false
var stampa3=false

function prosegui() 
{
	if ((stampa1==true)&&(stampa2==true)&&(stampa3==true))
	{
		return true;
	}
	else
	{
		alert('E\' necessario stampare tutti e tre i moduli sopra riportati per poter proseguire.');
		return false;
	}
}
