var flowPathDynPackSearchResult = "/edreams/italiano/dynamic/dynamicSearchResult.jhtml";var alMaxNinePassengers = "Il numero massimo di passeggeri é 9. Per favore controlla il numero di passeggeri.";var alMaxFourPassengers = "- Il numero massimo di persone per stanza é 4. Per favore controlla il numero di passeggeri.";var alNoPassengerSelected = "- Non hai introdotto nessun passeggero.";var alMaxTwoChildForAdult = "- Massimo due bambini per ogni adulto.";var alCityDepartureBlank = "- Devi indicare una cittá di partenza.";var alCityDepartureNoNum = "- La cittá di partenza non puó contenere numeri.";var alCityArrivalBlank = "- Devi indicare una cittá d'arrivo.";var alCityArrivalNoNum = "- La cittá d'arrivo non puó contenere numeri.";var alDateDepartureBlank = "- Devi indicarci la data di partenza.";var alDateDepartureFormatErr = "- La data di partenza corretta é cosi scritta: gg/mm/aa. ES.: 27/12/2007";var alDateReturnBlank = "- Devi indicarci la data di ritorno.";var alDateReturnFormatErr = "- La data di ritorno corretta é cosi scritta: gg/mm/aa. ES.: 27/12/2007";var alDateDepartureBeforeNow = "- La data di partenza introdotta é precedente rispetto alla data odierna. Per favore introduci una data di partenza posteriore alla data odierna.";var alDateReturnBeforeNow = "- La data di ritorno introdotta é precedente rispetto alla data odierna. Per favore introduci una data di ritorno posteriore alla data odierna. ";var alDateRetBeforeDateDep = "- La data di ritorno introdotta é precedente o uguale a quella di partenza. Per favore introduci una data di ritorno posteriore a quella di partenza.";var alMaxThirtyDays = "- Il soggiorno massimo consentito é di 30 giorni. Per favore controlla la tua data di ritorno.";var alMaxThirtyDaysPartA = "- La data di partenza non puó essere posteriore a ";var alMaxThirtyDaysPartB = ". Per favore controlla la data di partenza.";var alNoRadioBoundSelected = "Devi scegliere un volo nello stesso riquadro.";var alNoRadioIdaBoundSelected = "Devi scegliere un volo d'andata nello stesso riquadro.";var alNoRadioVueltaBoundSelected = "Devi scegliere un volo di ritorno nello stesso riquadro.";var alNoRadioSameBoundSelected = "Devi scegliere un volo di andata e uno di ritorno nello stesso riquadro.";var alChildrenInvalidBirthPartA = "- La dat di nascita del bambino ";var alChildrenInvalidBirthPartB = " nella stanza ";var alChildrenInvalidBirthPartC = " non é valida.";var alChildrenInvalidAgePartA = "- L'etá massima per un bambino é di 12 anni, controlla l'etá del bambino. ";var alChildrenInvalidAgePartB = " nella stanza. ";var alChildrenInvalidAgePartC = ".";var alNoFlightSelectable = "questo volo non si puó selezionare."var alLoginNoUser = "- Per favore, introduci il tuo indirizzo e-mail \n";var alLoginNoPassword = "- Per favore, introduci la tua password \n";var alNoRoomSelected = "Per favore, scegli una stanza \n";function cleanUp(obj, txt) {    if (obj.value == txt) {        obj.value = "";    }    return;}function setCitiesDynPack(){  //var FormNameInputCityD = document.getElementById("dynDepartureCity");  var FormNameInputCityA = document.getElementById("dynArrivalCity");  //loadSelectFromList(FormNameInputCityD, listCityD_val, listCityD_txt);  loadSelectFromList(FormNameInputCityA, listCityA_val, listCityA_txt);}function loadSelectFromList(selectToLoad, inListVal, inListTxt){  //selectToLoad: document.getElementById("<select id>")  if(inListVal.length==inListTxt.length){     selectToLoad.options.length = 0;     for(var i=0;i<=(inListVal.length)-1;i++){         selectToLoad.options[i] = new Option(inListTxt[i], inListVal[i], false, false);     }  }}function setFormNameInputCityD(selCityIdx){  var selCityTxt = document.getElementById("dynDepartureCity").options[selCityIdx].text;  var selCityVal = document.getElementById("dynDepartureCity").options[selCityIdx].value;  document.getElementById("dynDepartureCity_ind").value=selCityIdx;  document.getElementById("dynDepartureCity_txt").value=selCityTxt;  document.getElementById("dynDepartureCity_val").value=selCityVal;  if(findCityInTheList(selCityVal, listCityD_val)){     var newListVal = removeCityFromTheList(selCityVal, listCityA_val);     var newListTxt = removeCityFromTheList(selCityTxt, listCityA_txt);     var FormNameInputCityA = document.getElementById("dynArrivalCity");     loadSelectFromList(FormNameInputCityA, newListVal, newListTxt);  }}function setFormNameInputCityA(selCityIdx){  var selCityTxt = document.getElementById("dynArrivalCity").options[selCityIdx].text;  var selCityVal = document.getElementById("dynArrivalCity").options[selCityIdx].value;  document.getElementById("dynArrivalCity_ind").value=selCityIdx;  document.getElementById("dynArrivalCity_txt").value=selCityTxt;  document.getElementById("dynArrivalCity_val").value=selCityVal;}function findCityInTheList(inCity, inList){  for(var i=0;i<=(inList.length)-1;i++){      var cityN = inList[i];      if(inCity==cityN){      	 return true;      }  }  return false;}function findCityInTheListReturnIndex(inCity, inList){  for(var i=0;i<=(inList.length)-1;i++){      var cityN = inList[i];      if(inCity==cityN){      	 return i;      }  }  return -1;}function removeCityFromTheList(inCity, inList){  var newList = new Array();  var newListInd = 0;  for(var i=0;i<=(inList.length)-1;i++){      var cityN = inList[i];      if(inCity!=cityN){      	 newList[newListInd] = cityN;      	 newListInd+=1;      }  }  return newList;}function setInCityDeparture(inCity){  var selCityIdx = findCityInTheListReturnIndex(inCity, listCityD_val);  if(selCityIdx!=-1){     var FormNameInputCityD = document.getElementById("dynDepartureCity");     var selCityTxt = listCityD_txt[selCityIdx];     var selCityVal = listCityD_val[selCityIdx];;     document.getElementById("dynDepartureCity_ind").value=selCityIdx;     document.getElementById("dynDepartureCity_txt").value=selCityTxt;     document.getElementById("dynDepartureCity_val").value=selCityVal;     FormNameInputCityD.selectedIndex=selCityIdx;  }}function setInCityArrival(inCity){  var selCityIdx = findCityInTheListReturnIndex(inCity, listCityA_val);  if(selCityIdx!=-1){     var FormNameInputCityA = document.getElementById("dynArrivalCity");     var selCityTxt = listCityA_txt[selCityIdx];     var selCityVal = listCityA_val[selCityIdx];;     document.getElementById("dynArrivalCity_ind").value=selCityIdx;     document.getElementById("dynArrivalCity_txt").value=selCityTxt;     document.getElementById("dynArrivalCity_val").value=selCityVal;     FormNameInputCityA.selectedIndex=selCityIdx;  }}function submitFormDynSearchForm(inFormNameId){  var alertText = "";    var typeOfSearch;  var FormNameInputCityD = document.getElementById("dynDepartureCity");  var FormNameInputCityA = document.getElementById("dynArrivalCity");  var FormNameInputDateD = document.getElementById("dynDepartureDate");  var FormNameInputDateR = document.getElementById("dynReturnDate");  var FormNameInputTimeD = document.getElementById("dynDepartureTime");  var FormNameInputTimeR = document.getElementById("dynReturnTime");  var FormNameInputRooms = document.getElementById("dynNumOfRooms");  var FormNameInputAdults = document.getElementById("dynNumOfAdults");  var FormNameInputChildren = document.getElementById("dynNumOfChildren");  var FormNameInputOnlyDirectFlight = document.getElementById("dynOnlyDirectFlight"); 	typeOfSearch = document.getElementById(inFormNameId).typeOfSearch.value;  //var FormNameInputOnlyPrincipalAirports = document.getElementById("dynOnlyPrincipalAirports");  //if(FormNameInputOnlyPrincipalAirports.checked){  //   document.getElementById("AirportsType").value='PRIMARY';  //}  //check cities  if(FormNameInputCityD.value==""){      alertText = alertText + alCityDepartureBlank + "\n";  }  if(FormNameInputCityD.value.search(/\d/) != -1){      alertText = alertText + alCityDepartureNoNum + "\n";  }    if(FormNameInputCityA.value=="" || FormNameInputCityA.value=="Escribe tu destino" || FormNameInputCityA.value=="Scegli dall'elenco" || FormNameInputCityA.value == "Elige de la lista" || FormNameInputCityA.value == "Scrivi la tua città"){      alertText = alertText + alCityArrivalBlank + "\n";  }      if(FormNameInputCityA.value.search(/\d/) != -1){      alertText = alertText + alCityArrivalNoNum + "\n";  }  //check dates  if(FormNameInputDateD.value==""){      alertText = alertText + alDateDepartureBlank + "\n";  }  if(FormNameInputDateR.value==""){      alertText = alertText + alDateReturnBlank + "\n";  }  var diafecha, mesfecha, anyofecha;  var d = new Date();  var diasmes = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];    diafecha = FormNameInputDateD.value.substring(0, 2);  mesfecha = FormNameInputDateD.value.substring(3, 5);  anyofecha = FormNameInputDateD.value.substring(6);    idep = parseInt(anyofecha + mesfecha + diafecha);    if((FormNameInputDateD.value.length != 10)    ||     (FormNameInputDateD.value.charAt(2) !='/') ||     (FormNameInputDateD.value.charAt(5) != '/')){      alertText = alertText + alDateDepartureFormatErr + "\n";  }else{	  if(isNaN(diafecha) || isNaN(mesfecha) || isNaN(anyofecha)){		 alertText = alertText + alDateDepartureFormatErr + "\n";	  }else{		  if((mesfecha < 1) || (mesfecha > 12)){			  alertText = alertText + alDateDepartureFormatErr + "\n";		  }else{			  if((diafecha < 1) || (diafecha > diasmes[mesfecha])){				  alertText = alertText + alDateDepartureFormatErr + "\n";			  }			}		}	}  var iTodayDate = parseInt(document.getElementById("dynpackActualDate").value.substring(6) + document.getElementById("dynpackActualDate").value.substring(3, 5) + document.getElementById("dynpackActualDate").value.substring(0, 2));  if(idep < iTodayDate){     alertText = alertText + alDateDepartureBeforeNow + "\n";  }    diafecha = FormNameInputDateR.value.substring(0, 2);  mesfecha = FormNameInputDateR.value.substring(3, 5);  anyofecha = FormNameInputDateR.value.substring(6);  if((FormNameInputDateR.value.length != 10)    ||     (FormNameInputDateR.value.charAt(2) !='/') ||     (FormNameInputDateR.value.charAt(5) != '/')){      alertText = alertText + alDateReturnFormatErr + "\n";  }else{	  if(isNaN(diafecha) || isNaN(mesfecha) || isNaN(anyofecha)){		 alertText = alertText + alDateReturnFormatErr + "\n";	  }else{		  if((mesfecha < 1) || (mesfecha > 12)){			  alertText = alertText + alDateReturnFormatErr + "\n";		  }else{			  if((diafecha < 1) || (diafecha > diasmes[mesfecha])){				  alertText = alertText + alDateReturnFormatErr + "\n";			  }			}		}	}  iret = parseInt(anyofecha + mesfecha + diafecha);  if(iret < iTodayDate){     alertText = alertText + alDateReturnBeforeNow + "\n";  }    if(idep >= iret){     alertText = alertText + alDateRetBeforeDateDep + "\n";  }  var today = new Date();  var maxDate = new Date(Date.parse((today.getFullYear()+1) + "/" +(parseInt(today.getMonth(),10))+ "/" + today.getDate()));  var md = parseInt(maxDate.getFullYear().toString() + ((maxDate.getMonth()+1)<10 ?("0"+(maxDate.getMonth()+1).toString()) : (maxDate.getMonth()+1).toString()) + (maxDate.getDate()<10?("0"+maxDate.getDate().toString()):maxDate.getDate().toString()));   var em = anyadirDias(FormNameInputDateD.value,30,'integer')  if(iret > em){     alertText = alertText + alMaxThirtyDays + "\n";  }  if(iret > md){     var thisAlert = alMaxThirtyDaysPartA + maxDate.getDate() + "/" + (maxDate.getMonth()+1) + "/" + maxDate.getFullYear() + alMaxThirtyDaysPartB;     alertText = alertText + thisAlert + "\n";  }  //check passengers  var numberOfRooms = parseInt(FormNameInputRooms.value, 10);  var numberOfAdults = parseInt(FormNameInputAdults.value, 10);  var numberOfChildren = parseInt(FormNameInputChildren.value, 10);  var numberOfPassengers = (numberOfAdults + numberOfChildren) * numberOfRooms;  if(numberOfPassengers > 9){      alertText = alertText + alMaxNinePassengers + "\n";  }  if((numberOfAdults + numberOfChildren) > 4){      alertText = alertText + alMaxFourPassengers + "\n";  }  if(numberOfPassengers < 1){      alertText = alertText + alNoPassengerSelected + "\n";  }  if((numberOfChildren) > (numberOfAdults*2)){      alertText = alertText + alMaxTwoChildForAdult + "\n";  }  if(alertText!=""){     alert(alertText);     return false;  }else{	//codes for viajes	 if(document.dynSearchForm){		 document.dynSearchForm.selectDepAirport.value=window.parent.document.dynSearchForm.dynDepartureCity.value;		 document.dynSearchForm.depdateday.value=window.parent.document.dynSearchForm.dynDepartureDate.value;	}else if(document.dynSearchFormLinear){		 document.dynSearchFormLinear.selectDepAirport.value=window.parent.document.dynSearchFormLinear.dynDepartureCity.value;		 document.dynSearchFormLinear.depdateday.value=window.parent.document.dynSearchFormLinear.dynDepartureDate.value;      }  	  switch(typeOfSearch){		case "ambiguo":				document.getElementById(inFormNameId).action="/edreams/italiano/dynamic/desambiguacion.jhtml";			break;		case "vacacion":			document.getElementById(inFormNameId).action="/edreams/italiano/so/so_launch_search.jhtml";			break;		default : 			document.getElementById(inFormNameId).action="/edreams/italiano/dynamic/dynamicSearchEngine_desambiguacion.jhtml";	}	 setSwooshStep("paso1","dynpack",inFormNameId);     document.getElementById(inFormNameId).submit();  }    return false;}function clickListFlightsOthersShow(inHowMany){  var numberOfFlights = document.getElementById("numberOfFlights");  numberOfFlights.value = inHowMany;  document.forms.dynResultForm.action=flowPathDynPackSearchResult;  document.forms.dynResultForm.submit();}function clickListHotelsOthersShow(inHowMany){  var numberOfFlights = document.getElementById("numberOfHotels");  numberOfFlights.value = inHowMany;  document.forms.dynResultForm.action=flowPathDynPackSearchResult;  document.forms.dynResultForm.submit();}function submitFormDynSortHotel(inFormDynSortHotel){  var alertTextSortHotel = "";  if(alertTextSortHotel!=""){     alert(alertTextSortHotel);     return false;  }else{     document.getElementById('edreamsScreen').style.display="none";     document.getElementById('waitScreen').style.display="block";     document.getElementById('waitScreen').style.visibility="visible";     window.scrollTo(1,1);     inFormDynSortHotel.submit();  }  return false;}function submitFormDynChooseAirport(inFormDynChooseAirport){  var alertTextChooseAirport = "";  var dynDepartureCity = document.getElementById("dynDepartureCity").value;  if(dynDepartureCity==""){     alertTextChooseAirport = "Selecciona una ciudad";  }  if(alertTextChooseAirport!=""){     alert(alertTextChooseAirport);     return false;  }else{     document.getElementById('edreamsScreen').style.display="none";     document.getElementById('waitScreen').style.display="block";     document.getElementById('waitScreen').style.visibility="visible";     window.scrollTo(1,1);     inFormDynChooseAirport.submit();  }  return false;}function submitFormDynChildrenPage(inFormDynChildrenPage){  var alertTextChildren = "";  var theSelectId = "";  var numberOfRooms = document.getElementById("numberOfRoomsHidden").value;  var numberOfChilds = document.getElementById("numberOfChildsHidden").value;  var yyyyMMddNow = document.getElementById("yyyyMMddNow").value;  var yyyyMMddMax = document.getElementById("yyyyMMddMax").value;  for(var iRooms=1; iRooms<=numberOfRooms; iRooms++){      for(var iChildren=1; iChildren<=numberOfChilds; iChildren++){      	  theSelectId = "R" + iRooms + "C" + iChildren;      	  var dd = document.getElementById("birthDateDay"+theSelectId);          var mm = document.getElementById("birthDateMonth"+theSelectId);          var yyyy = document.getElementById("birthDateYear"+theSelectId);          if(!isDateValid(yyyy.value, mm.value, dd.value)){             alertTextChildren = alertTextChildren + alChildrenInvalidBirthPartA + iChildren + alChildrenInvalidBirthPartB + iRooms + alChildrenInvalidBirthPartC + "\n";          }          var yyyymmddNumeric = (yyyy.value+mm.value+dd.value)/1;          if(yyyyMMddMax>=yyyymmddNumeric){              alertTextChildren = alertTextChildren + alChildrenInvalidAgePartA + iChildren + alChildrenInvalidAgePartB + iRooms + alChildrenInvalidAgePartC + "\n";          }      }  }  if(alertTextChildren!=""){     alert(alertTextChildren);     return false;  }else{    setSwooshStep("paso1", "dynpack", "dynFormChildrenPage");	inFormDynChildrenPage.submit();  }  return false;}function isDateValid(year, month, day){    var d = day + "";    var m = month + "";    var y = year + "";    if((d == "") || ( m == "") || ( y == "")){        return false;    }    if(isNaN(d) || isNaN(m) || isNaN(y)){        return false;    }    if(((parseFloat(d) + "") != (parseInt(d, 10) + "")) || ((parseFloat(m) + "") != (parseInt(m, 10) + "")) || ((parseFloat(y) + "") != (parseInt(y, 10) + ""))){        return false;    }    d = parseInt(d, 10);    m = parseInt(m, 10);    y = parseInt(y, 10);    if(d < 1 || m < 1 || y < 1){        return false;    }    if(m < 1 || m > 12){        return false;    }    if((m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) && (d > 31)){        return false;    }    if((m == 4 || m == 6 || m == 9 || m == 11) && (d > 30)){        return false;    }    if((m == 2) && (d > 29)){        return false;    }    if((m == 2) && (!isLeapYear(y)) && (d == 29)){        return false;    }    return true;}function isLeapYear(year){  return ((year % 4 == 0 && year % 100 != 0) || ((year % 4 == 0 && year % 100 == 0) && (year % 400 == 0)));}function chooseOnlyOne(obj) {	a = document.getElementsByName(obj.name);	for (i = 0; i < a.length; i++) {		a[i].name;		a[i].checked =  false;	}	obj.checked = true;}function checkSelItinerary(form) {	selIn = false;	selOut = false;	obj = form.outBoundSegment;	if (obj == null) {		alert(alNoFlightSelectable);		return false;	}		if (obj.length > 0) {		for (var i = 0; i < obj.length; i++) {		    if (obj[i].checked) {				selOut = true;			}		}	} else {	    if (obj.checked) {			selOut = true;		}	}		if ((selOut == false)) {		alert(alNoRadioIdaBoundSelected);		return false;	}		obj = form.inBoundSegment;		if (obj != null) {		if (obj.length > 0) {			for (var i = 0; i < obj.length; i++) {			    if (obj[i].checked) {					selIn = true;				}			}		} else {		    if (obj.checked) {				selIn = true;			}		}			if ((selIn == false)) {			alert(alNoRadioSameBoundSelected);			return false;		}	}		setSwooshStep("paso1","dynpack","dynSearchFormLinear");	window.scrollTo(1,1);		return true;}function submitFormDynOurSuggestSelection(inFormDynOurSuggestSelection){	setSwooshStep("paso3","dynpack");	window.scrollTo(1,1);	return true;}function submitFormDynHotelSelection(){	setSwooshStep("paso1","dynpack","dynSearchFormLinear");	return true;}function submitFormDynRoomSelection(inFormDynRoomSelection){  var alertTextRoomSelection = "";    var idxRoom = document.getElementById("idxRoom").value;  if(idxRoom==-1){     alertTextRoomSelection+=alNoRoomSelected;  }  if(alertTextRoomSelection!=""){     alert(alertTextRoomSelection);     return false;  }else{     setSwooshStep("paso4","dynpack");     inFormDynRoomSelection.submit();  }  return false;}function trim(stringa){  while(stringa.charAt(0)==" ") stringa=stringa.substr(1);  while(stringa.charAt(stringa.length-1)==" ") stringa=stringa.substr(0, stringa.length-1);  return stringa;}
