var pass=true;	//variabile di controllo che indica se tutti i campi sono compilati correttamente
var l;		//variabile di controllo lingua

function test(form,lang){
         l=Number(lang);
         test1(form);

         if(!pass){;}else{ test2(form);}
//window.alert("valore pass finale="+pass);

}



/* FUNZIONE VERIFICA DATI PRENOTAZIONE */
function test1(form,l){ 
//window.alert("inizio  test1");
form.lettoextra.value=form.lettoextra.value.toUpperCase();

var tipocamera=form.tipocamera.selectedIndex;
var n_camere=form.n_camere.selectedIndex;
var eta=form.eta.selectedIndex;
var lettoextra;


if(form.lettoextra.checked){lettoextra=1;}
else{lettoextra=0;}

var check1=Number(tipocamera);
var check2=Number(n_camere);
var check3=Number(lettoextra);
var check4=Number(eta);
var check=check1+check2+check3+check4;
var check1_2;
var check3_4;

if(check1==0){ if(check2==0){check1_2="00"}
	         else{check1_2="0X"}}
else{ if(check2==0){check1_2="X0"}
	         else{check1_2="XX"}}
if(check3==0){ if(check4==0){check3_4="00"}
	         else{check3_4="0X"}}
else{ if(check4==0){check3_4="X0"}
	         else{check3_4="XX"}}

//window.alert("tipocamera="+check1+"\n"+"n_camere="+check2+"\n"+"lettoextra="+check3+"\n"+"eta="+check4+"\n\n\n"+"check="+check);
//window.alert(check1_2+check3_4);

Check1_2(check1_2);
//window.alert("valore pass dopo Check1_2="+pass);
if(!pass) {;}else {controlN_camere(tipocamera,check2);Check3_4(check3_4,controlLettoextra(document.HotelForm.tipocamera.selectedIndex));}

//window.alert("valore pass dopo Check3_4="+pass);
//window.alert("valore pass dopo test1="+pass);

}



/* FUNZIONE VERIFICA DATI PERSONALI E PRIVACY */
function test2(form){ 
//window.alert("inizio  test2");
form.privacy.value=form.privacy.value.toUpperCase();
form.richiesta.value=form.richiesta.value.toUpperCase();
form.cognome.value=form.cognome.value.toUpperCase();
form.nome.value=form.nome.value.toUpperCase();
form.citta.value=form.citta.value.toUpperCase();
form.nazione.value=form.nazione.value.toUpperCase();
form.telefono.value=form.telefono.value.toLowerCase();
form.email.value=form.email.value.toLowerCase();
form.email1.value=form.email1.value.toLowerCase();

temp=form.nome.value.length;
if (temp<3  ) {
    pass=false;changeColor("nome");
    if(l==1){window.alert ("Specificare il nome correttamente");}else if(l==2){window.alert ("Please, give your correct name");}else if(l==3) {window.alert ("Ein korrekter Name angeben");}else {;}
    }else {changeColorBack("nome");}

temp=form.cognome.value;
if (temp<3  ) {
    pass=false;changeColor("cognome");
   if(l==1){window.alert ("Specificare in cognome correttamente");}else if(l==2){window.alert ("Please, give your correct surname");}else if(l==3) {window.alert ("Ein korrekter Nachname angeben");}else {;}
    }else {changeColorBack("cognome");}

temp=form.nazione.value;
if(temp!="") {if ( !(/^([A-Z]+([\.-])?)+$/.test(form.nazione.value)) ) { 
     pass=false;changeColor("nazione");
    if(l==1){window.alert ("Specificare correttamente la nazione");}else if(l==2){window.alert ("Please, give correctly your country");}else if(l==3) {window.alert ("Das Land korrekt angeben");}else {;}}
                    else{changeColorBack("nazione");}
}

temp=form.telefono.value;
if ( ( !(/^([0-9]+([\\/|.-])?)+$/.test(form.telefono.value)) )  ) {
    pass=false;changeColor("telefono");
    if(l==1){window.alert ("Il numero di telefono deve essere di sole cifre");}else if(l==2){window.alert ("phone number only with numbers");}else if(l==3) {window.alert ("Telefonnummer nur mit Zahlen");}else {;}
    }else {changeColorBack("telefono"); }

if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(form.email.value))){
pass=false;changeColor("email");
   if(l==1){window.alert ("E-mail non corretta");}else if(l==2){window.alert ("E-mail is not correct");}else if(l==3) {window.alert ("Die Email Adresse ist nicht korrekt");}else {;}
}else{changeColorBack("email");}
//window.alert(pass);

if( !(form.email.value===form.email1.value)) {
pass=false;changeColor("email1");
  if(l==1){window.alert ("E-mail non corrisponde");}else if(l==2){window.alert ("E-mail adress is different");}else if(l==3) {window.alert ("Die Email Adresse ist nicht gleich");}else {;}}
else {changeColorBack("email1");}
//window.alert(pass);

temp=form.richiesta.value.length;
if  (document.HotelForm.tipocamera.selectedIndex==0)  {if (temp<10) {pass=false;
						 if(l==1) {window.alert ("SPECIFICHI LE SUE RICHIESTE");}
					            else if (l==2) {window.alert ("SPECIFY YOUR REQUESTS");}
					            else if (l==3) {window.alert ("GEBEN SIE HIER IHRE WÜNSCHE EIN");}}}
   else{ if (temp==="SPECIFICHI LE SUE RICHIESTE" || temp==="SPECIFY YOUR REQUESTS" || temp==="GEBEN SIE HIER IHRE WÜNSCHE EIN" || temp==="") { if(pass==true) {document.HotelForm.richiesta.disabled=true;}} 
    }

if ( (!form.privacy.checked) ) {
    pass=false;
    changeColor("textprivacy");
  if(l==1){window.alert ("Per legge, senza la Sua autorizzazione al trattamento dei dati non possiamo inviarLe messaggi!");}
 else if(l==2){window.alert ("By law, without Your authorization for your personal data we can't send You any message!");}
 else if(l==3) {window.alert ("Wegen Gesetz, ohne die Erm&#228;chtigung f&#252;r Ihren Daten, k&#246;nnen wir nicht Ihre Anfrage bearbeiten!");}
 else {;}
    }
 else {changeColorBack("textprivacy");}
//window.alert("valore pass dopo test2="+pass);
}



function controlN_camere(tipocamera,check2){
//window.alert("inizio controlN_camere");
//window.alert("language=  "+l);
 switch(tipocamera){
       case 1:      
	 break;
       case 2:
	 if(check2>3){pass=false;changeColor("n_camere");
			          if(l==1){window.alert("L'Hotel ha solo 3 Doppie/vista lago/terrazza");}
			          else if(l==2){window.alert("Hotel has only 3 Double room/lake view/terrace");}else if(l==3){window.alert("Das Hotel hat nur 3 Doppelzimmer/Seeblick/Terrasse");}else{;}}else{changeColorBack("n_camere");}
	 break;
       case 3:
	changeColorBack("n_camere");
	break;
       case 4:
	 if(check2>1){pass=false;changeColor("n_camere");
			         if(l==1){window.alert("L'Hotel ha solo 1 Singola");}
			          else if(l==2){window.alert("Hotel has only 1 Single room");}else if(l==3){window.alert("Das Hotel hat nur 1 Einzelzimmer");}else{;}}
	break;
       case 5:
	 if(check2>4){pass=false;changeColor("n_camere");
			         if(l==1){window.alert("L'Hotel ha solo 1 Singola/vista lago/balcone");}
			          else if(l==2){window.alert("Hotel has only 1 Single room/lake view/balcony");}else if(l==3){window.alert("Das Hotel hat nur4 Einzelzimmer/Seeblick/Balkon");}else{;}}
	 break;
        default:
	changeColorBack("n_camere");
	 break;
	 }
}


function Check1_2(check1_2){
	switch(check1_2){
		case 'X0':
		               {pass=false;changeColorBack("tipocamera");changeColor("n_camere");
			          if(l==1){window.alert("Selezionare il n° di camere");}
			          else if(l==2){window.alert("Give the n° of rooms");}else if(l==3){window.alert("Die Zimmermenge wählen");}else{;}}
			     break;
		case '0X':
		                {pass=false;changeColor("tipocamera");changeColorBack("n_camere");
			          if(l==1){window.alert("Selezionare il tipo di camera");}
			          else if(l==2){window.alert("Give the type of room");}else if(l==3){window.alert("Ein Zimmertyp wählen");}else{;}}
			    break;
		default:  pass=true;changeColorBack("tipocamera");changeColorBack("n_camere");
			     break;
	}
}


function Check3_4(check3_4,s){
//window.alert("inizio Check3_4");
	if(s){
	        switch(check3_4){
		case 'X0':
			     {pass=false;changeColor("eta");
			          if(l==1){window.alert("Selezionare l'età della 3° persona");}
			          else if(l==2){window.alert("Give the age of 3° person");}else if(l==3){window.alert("Der Alte der 3° Person wählen");}else{;}}
			    break;
		case '0X':
			     {pass=false;
				         if(l==1){if(window.confirm("Si desidera il 3° letto?")){document.HotelForm.lettoextra.checked=true;changeColorBack("eta");}else{document.HotelForm.eta.selectedIndex=0;}}
			                         else if(l==2){if(window.confirm("Is the 3° bed requested ?")){document.HotelForm.lettoextra.checked=true;changeColorBack("eta");}else{document.HotelForm.eta.selectedIndex=0;}}
                                                                         else if(l==3){if(window.confirm("Möchten Sie den Zustelbett ?")){document.HotelForm.lettoextra.checked=true;changeColorBack("eta");}else{document.HotelForm.eta.selectedIndex=0;}}
				         else{;}}
			    break;
		default:        
			    changeColorBack("eta"); 
   			    pass=true;
			    break;
	        }
	}else{pass=true;document.HotelForm.lettoextra.checked=false;document.HotelForm.eta.selectedIndex=0;changeColorBack("lettoextra");}

}


function checkArrDate(){	//DA DEFINIRE
var date=new Date();
var dayin=document.HotelForm.inDay.value;
var monthin=document.HotelForm.inMonth.value;
}


function controlLettoextra(tipocamera){
//window.alert("inizio controlLettoextra");
   var s=true;
   if(tipocamera==0){;}
   else  if(tipocamera==1 || tipocamera==2){;}
   else{s=false;if(document.HotelForm.lettoextra.checked){
	         if(l==1){window.alert("Per il tipo di camera selezionata non è possibile il letto aggiunto");}
	        else if(l==2){window.alert("In the choosed room isn't possible the 3° bed");}else if(l==3){window.alert("Im gewählten Zimmer, ist das Zustellbett nicht möglich");}else{;}}else{;}}
   return s;
}


function control_reserv(lang){
var x=document.HotelForm
if(x.scelta[1].checked=true){if(lang==1){if(window.confirm("Desidera effettuare una prenotazione  ?")){;}else{x.scelta[0].checked=true;}}
				else if(lang==2){if(window.confirm("Will you make a reservation  ?")){;}else{x.scelta[0].checked=true;}}
				else if(lang==3){if(window.confirm("Möchten Sie reservieren ?")){;}else{x.scelta[0].checked=true;}}
				}
}


function reset2(lang){
var x=document.HotelForm;
x.nome.value="";x.nome.style.backgroundColor="#e0f0fe";
x.cognome.value="";x.cognome.style.backgroundColor="#e0f0fe";
x.via.value="";x.via.style.backgroundColor="#e0f0fe";
x.n_civico.value="";x.n_civico.style.backgroundColor="#e0f0fe";
x.cap.value="";x.cap.style.backgroundColor="#e0f0fe";
x.citta.value="";x.citta.style.backgroundColor="#e0f0fe";
x.nazione.value="";x.nazione.style.backgroundColor="#e0f0fe";
x.telefono.value="";x.telefono.style.backgroundColor="#e0f0fe";
x.email.value="";x.email.style.backgroundColor="#e0f0fe";
x.email1.value="";x.email1.style.backgroundColor="#e0f0fe";
x.richiesta.style.backgroundColor="#e0f0fe";x.richiesta.disabled=false;
if(lang==1){x.richiesta.value="SPECIFICHI LE SUE RICHIESTE";}
else if(lang==2){x.richiesta.value="SPECIFY YOUR REQUESTS";}
else if(lang==3){x.richiesta.value="GEBEN SIE HIER IHRE WÜNSCHE EIN";}
else{;}
}


function reset1(){
var x=document.HotelForm;
x.tipocamera.selectedIndex=0;x.tipocamera.style.backgroundColor="#e0f0fe";
x.n_camere.selectedIndex=0;x.n_camere.style.backgroundColor="#e0f0fe";
x.lettoextra.checked=false;
x.eta.selectedIndex=0;x.eta.style.backgroundColor="#e0f0fe";
setDateForm(0);
}


function reset3(){
var x=document.LinkExchangeForm;
x.area_hotel_partner.selectedIndex=0;x.area_hotel_partner.style.backgroundColor="#FFFFFF";
x.nome_hotel_partner.value="";x.nome_hotel_partner.style.backgroundColor="#FFFFFF";
x.sito_hotel_partner.value="";x.sito_hotel_partner.style.backgroundColor="#FFFFFF";
x.stelle_hotel_partner.selectedIndex=0;x.stelle_hotel_partner.style.backgroundColor="#FFFFFF";
x.comune_hotel_partner.value="";x.nome_hotel_partner.style.backgroundColor="#FFFFFF";
}


function changeColor(name){
var id=name
    if(document.getElementByName){
    var element=document.getElementByName[name];
    element.style.backgroundColor="#FA984A";
    }
    else if(document.all){
    var element=document.all[name];
    element.style.backgroundColor="#FA984A";
    }
    else if(document.layers){
    var element=document.layers[name];
    element.style.backgroundColor="#FA984A";
    }

}

function changeColorBack(name){
var id=name
       if(id==="nome" || id==="cognome" || id==="nazione" || id==="telefono" || id==="email"  || id==="email1" || id==="richiesta" || id==="textprivacy"){
	if(document.getElementByName){
	var element=document.getElementByName[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.all){
	var element=document.all[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.layers){
	var element=document.layers[name];
	element.style.backgroundColor="#e0f0fe";
	}
       }else{
	if(document.getElementByName){
	var element=document.getElementByName[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.all){
	var element=document.all[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.layers){
	var element=document.layers[name];
	element.style.backgroundColor="#e0f0fe";
	}
        }
}

/* FUNZIONI MODIFICA COLORE SFONDO MENU ORIZZONTALI SX (tabella02=T02 , tabella03=T03 , tabella04=T04 , tabella05=T05 , tabella06=T06 , tabella07=T07 , tabella13=T13*/
function changebgColor(T){
    switch(T){
	case "T02":
	this.backgroundColor="#3545FB";
	break;
	default:
	break;
    }
}

function changebgColorBack(name){
var id=name
	if(document.getElementByName){
	var element=document.getElementByName[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.all){
	var element=document.all[name];
	element.style.backgroundColor="#e0f0fe";
	}
	else if(document.layers){
	var element=document.layers[name];
	element.style.backgroundColor="#e0f0fe";
	}
}
/* FUNZIONE VERIFICA LINK EXCHANGE FORM */

function testlink(form,lang){
l=Number(lang);
var URLlink=form.URLlink.value;
var titolo=form.titolo.value;
var description=form.descrizione.value.length;
var category=form.category.value;
var site_type=form.site_type.value;
var linkURL=form.linkURL.value
form.email.value=form.email.value.toLowerCase();
form.email1.value=form.email1.value.toLowerCase();

temp=titolo;
if (temp.length<5 || temp.length>60) {
    pass=false;changeColor("titolo");
    if(l==1){window.alert ("Il Titolo deve avere un numero di caratteri tra 5 e 60");}else if(l==2){window.alert ("Title must have between 5 and 60 chars");}else {;}
    }else {changeColorBack("titolo");}

temp=URLlink;
if (temp.length < 1 || temp.search(/^(http|https):\/\/[a-zA-Z0-9\-_\/\.?=]+$/) == -1) {
    pass=false;changeColor("URLlink");
    if(l==1){window.alert ("URL LINK non corretto");}else if(l==2){window.alert ("URL LINK is not correct");}else {;}
    }else {changeColorBack("URLlink");}

temp=description;
if (temp<20 || temp>120) {
    pass=false;changeColor("descrizione");
    if(l==1){window.alert ("La descrizione deve avere un numero di caratteri tra 20 e 120");}else if(l==2){window.alert ("Description must have between 20 and 120 chars");}else {;}
    }else {changeColorBack("descrizione");}

temp=category;
if (temp=="00") {
    pass=false;changeColor("category");
    if(l==1){window.alert ("Specificare una categoria");}else if(l==2){window.alert ("Select a category");}else {;}
    }else {changeColorBack("category");}

temp=site_type;
if (temp=="00") {
    pass=false;changeColor("site_type");
    if(l==1){window.alert ("Specificare il tipo di sito");}else if(l==2){window.alert ("Select a site type");}else {;}
    }else {changeColorBack("site_type");}

temp=linkURL;
if (temp.length < 1 || temp.search(/^(http|https):\/\/[a-zA-Z0-9\-_\/\.?=]+$/) == -1) {
    pass=false;changeColor("linkURL");
    if(l==1){window.alert ("URL della pagina con il ns. link non corretto");}else if(l==2){window.alert ("URL of your link-exchange page is not correct");}else {;}
    }else {changeColorBack("linkURL");}

if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(form.email.value))){
pass=false;changeColor("email");
   if(l==1){window.alert ("E-mail non corretta");}else if(l==2){window.alert ("E-mail is not correct");}else {;}
}else{changeColorBack("email");}

if( !(form.email.value===form.email1.value)) {
pass=false;changeColor("email1");
  if(l==1){window.alert ("E-mail non corrisponde");}else if(l==2){window.alert ("E-mail adress is different");}else {;}}
else {changeColorBack("email1");}

return pass;

}



