// Controllo modulo


function controlla(f) {

var Cognome, Nome, Email, Via, Cap, Citta, Telefono, Email, Adulti, Bambini, numerotipologie, daAnno, daGiorno, daMese, alAnno, alGiorno, alMese, Consenso;
var CognomeComponente2, NomeComponente2, DatadiNascitaComponente2, LuogoNascitaComponente2;
var CognomeComponente3, NomeComponente3, DatadiNascitaComponente3, LuogoNascitaComponente3;
var CognomeComponente4, NomeComponente4, DatadiNascitaComponente4, LuogoNascitaComponente4;
var CognomeComponente5, NomeComponente5, DatadiNascitaComponente5, LuogoNascitaComponente5;
var CognomeComponente6, NomeComponente6, DatadiNascitaComponente6, LuogoNascitaComponente6;


Cognome=f.elements['cognome'].value;
Nome=f.elements['nome'].value;
Via=f.elements['via'].value;
Citta=f.elements['citta'].value;
Cap=f.elements['cap'].value;
Telefono=f.elements['telefono'].value;
Email=f.elements['email'].value;
Adulti=f.elements['adulti'].value;

daAnno=f.elements['daAnno'].value;
daMese=f.elements['daMese'].value;
daGiorno=f.elements['daGiorno'].value;


alAnno=f.elements['alAnno'].value;
alMese=f.elements['alMese'].value;
alGiorno=f.elements['alGiorno'].value;

Bambini=f.elements['bambini'].value;
numerotipologie=f.elements['tipo'].length;
numerotipoaccetto=f.elements['tipoaccetto'].length;


CognomeComponente2=f.elements['cognomecomponente2'].value;
NomeComponente2=f.elements['nomecomponente2'].value;
DatadiNascitaComponente2=f.elements['datadinascitacomponente2'].value;
LuogoNascitaComponente2=f.elements['luogonascitacomponente2'].value;

CognomeComponente3=f.elements['cognomecomponente3'].value;
NomeComponente3=f.elements['nomecomponente3'].value;
DatadiNascitaComponente3=f.elements['datadinascitacomponente3'].value;
LuogoNascitaComponente3=f.elements['luogonascitacomponente3'].value;

CognomeComponente4=f.elements['cognomecomponente4'].value;
NomeComponente4=f.elements['nomecomponente4'].value;
DatadiNascitaComponente4=f.elements['datadinascitacomponente4'].value;
LuogoNascitaComponente4=f.elements['luogonascitacomponente4'].value;

CognomeComponente5=f.elements['cognomecomponente5'].value;
NomeComponente5=f.elements['nomecomponente5'].value;
DatadiNascitaComponente5=f.elements['datadinascitacomponente5'].value;
LuogoNascitaComponente5=f.elements['luogonascitacomponente5'].value;

CognomeComponente6=f.elements['cognomecomponente6'].value;
NomeComponente6=f.elements['nomecomponente6'].value;
DatadiNascitaComponente6=f.elements['datadinascitacomponente6'].value;
LuogoNascitaComponente6=f.elements['luogonascitacomponente6'].value;


if ((Cognome.length<1)) {
   alert ('Il cognome è obbligatorio! Surname is required!')
   return false;

}

if ((Nome.length<1)) {
   alert ('Il nome è obbligatorio! First Name is required!')
   return false;

}

if ((Via.length<1)) {
   alert ('La Via è obbligatoria! Adress is required!')
   return false;

}

if ((Citta.length<1)) {
   alert ('La citta è obbligatoria! Town is required!')
   return false;

}

if ((Cap.length<1)) {
   alert ('Il cap è obbligatorio! Post Code is required!')
   return false;

}

if ((Email.length<1)) {
   alert ('L\'email è obbligatoria! Email is required!')
   return false;

}


if ((Citta.length<1)) {
   alert ('Il nome è obbligatorio! Name is required!')
   return false;

}

if ((Telefono.length<1)) {
   alert ('Il telefono è obbligatorio! Phone is required!')
   return false;

}

var stringapattern;
var result;
var pattern;



//inizio controllo email
	if ((Email.length<6)) {
      alert ('Email errata! Email error!')
      return false;
	}
	if (!((navigator.appName=='Netscape') && (navigator.appVersion.split(' ')[0]<5))) {
		result=Email.match(/^[\w_-]+(\.[\w_-]+)*@[\w_-]+(\.[\w_-]+)*\.[a-z]{2,4}$/)
		   if ((result==null) || (!(result[0].length==Email.length))) {
         		alert("Errore Email! Email error!");
         		return false;
       		}
	}
//Fine controllo email

//inizio controllo date
datainizio=new Date();
datainizio.setFullYear(daAnno);
datainizio.setMonth((daMese-1));
datainizio.setDate(daGiorno);

datafine=new Date();
datafine.setFullYear(alAnno);
datafine.setMonth((alMese-1));
datafine.setDate(alGiorno);

if ((datainizio>datafine)||(daGiorno=='')||(alGiorno=='')) {
   alert ('Data errata! Date error!')
   return false;

}
//fine controllo date
// inizio controllo da sabato a sabato
//if (!(datainizio.getDay()==6)) {
//   alert ('La Data di inizio deve essere un sabato!')
//   return false;

//}

//if (!(datafine.getDay()==6)) {
//   alert ('La Data di partenza deve essere un sabato!')
//   return false;

//}

// fine controllo da sabato a sabato


//inizio controllo adulti bambini
if (!((navigator.appName=='Netscape') && (navigator.appVersion.split(' ')[0]<5))) {

    result=Adulti.match(/[0-9]/)
    if ((result==null)) {
        alert ('Il numero di adulti è richiesto! Num Adult is required!')
        return false;  
    }
}  

if (!((navigator.appName=='Netscape') && (navigator.appVersion.split(' ')[0]<5))) {

    result=Bambini.match(/[0-9]/)
    if ((result==null)) {
        alert ('Il numero di bambini è richiesto! Num Children is required!')
        return false;  
    }
}  
// fine controllo adulti bambini

var tipologiachecked;
tipologiachecked=false;
for (var scorri=0; scorri<numerotipologie; scorri++) {

	if (f.elements['tipo'][scorri].checked) {
	   tipologiachecked=true;
	}

}

if (!tipologiachecked) {
   alert('Scegliere la tipologia! \n Type of Typology is required!');
   return false;
}   


if (!((f.elements['richiesta'][0].checked) || (f.elements['richiesta'][1].checked))) {
   alert('Scegliere il tipo di richiesta! \n Type of request is required!');
   return false;
} 


if (!((navigator.appName=='Netscape') && (navigator.appVersion.split(' ')[0]<5))) {
   
   var somma;
   somma=(Adulti - 0) + (Bambini - 0);
   
   if ((somma<1) || (somma>6)) {
       alert('Adulti + Bambini da 1 a 6! \n Adult + Children 1 to 6!');
       return false;
   }
   
  
	if (somma>1) {

       if (CognomeComponente2.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 2! \n  Date of members 2 is requered!');
          return false;
       }        

       if (NomeComponente2.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 2! \n  Date of members 2 is requered!');
          return false;
       }        
      
       if (DatadiNascitaComponente2.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 2! \n  Date of members 2 is requered!');
          return false;
       }        
   
       if (LuogoNascitaComponente2.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 2! \n  Date of members 2 is requered!');
          return false;
       }        
  }


	if (somma>2) {

       if (CognomeComponente3.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 3! \n  Date of members 3 is requered!');
          return false;
       }        

       if (NomeComponente3.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 3! \n  Date of members 3 is requered!');
          return false;
       }        
      
       if (DatadiNascitaComponente3.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 3! \n  Date of members 3 is requered!');
          return false;
       }        
   
       if (LuogoNascitaComponente3.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 3! \n  Date of members 3 is requered!');
          return false;
       }        
  }


	if (somma>3) {

       if (CognomeComponente4.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 4! \n  Date of members 4 is requered!');
          return false;
       }        

       if (NomeComponente4.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 4! \n  Date of members 4 is requered!');
          return false;
       }        
      
       if (DatadiNascitaComponente4.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 4! \n  Date of members 4 is requered!');
          return false;
       }        
   
       if (LuogoNascitaComponente4.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 4! \n  Date of members 4 is requered!');
          return false;
       }        
  }


	if (somma>4) {

       if (CognomeComponente5.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 5! \n  Date of members 5 is requered!');
          return false;
       }        

       if (NomeComponente5.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 5! \n  Date of members 5 is requered!');
          return false;
       }        
      
       if (DatadiNascitaComponente5.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 5! \n  Date of members 5 is requered!');
          return false;
       }        
   
       if (LuogoNascitaComponente5.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 5! \n  Date of members 5 is requered!');
          return false;
       }        
  }

	if (somma>5) {

       if (CognomeComponente6.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 6! \n  Date of members 6 is requered!');
          return false;
       }        

       if (NomeComponente6.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 6! \n  Date of members 6 is requered!');
          return false;
       }        
      
       if (DatadiNascitaComponente6.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 6! \n  Date of members 6 is requered!');
          return false;
       }        
   
       if (LuogoNascitaComponente6.length<1) {
          alert ('Sono necessarie le informazioni del componente numero 6! \n  Date of members 6 is requered!');
          return false;
       }        
  }

}

if(!(Consenso=f.elements['consenso'].checked==true)){
  alert ('Necessario dare il consenso al trattamento dei dati!')
         return false;
      }
var tipoaccettochecked;
tipoaccettochecked=false;
for (var scorri1=0; scorri1<numerotipoaccetto; scorri1++) {
	if (f.elements['tipoaccetto'][scorri1].checked) {
	   tipoaccettochecked=true;
	}

}

if (!tipoaccettochecked) {
   alert('Necessario scegliere tra SI e NO per l\'invio di informative su tariffe/offerte!');
      return false;
} 

return true; 
}

