// JavaScript Document

function selTipoProd(objProd) {
	var divFormulaDinamica = document.getElementById('divFormulaDinamica');
	var bFormulaDinamica = eval(objProd.getAttribute("opt:formulaDinamica"));
	if (bFormulaDinamica) {
		dijit.byId('StackDest').selectChild('dest_bas');
		divFormulaDinamica.style.display = '';		
		document.getElementById('divBtnSearch').style.display = 'none';	
	} else {
		divFormulaDinamica.style.display = 'none';
		changeDept(objProd);
		viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
		viewWApane('boxTipolBook','/booking/ajax/setTipolBook.cfm');
		document.getElementById('divBtnSearch').style.display = '';	
	}		
	document.getElementById('SRC_PRP_1').value = "";
	var objTipoViaggio = document.getElementById('divTipoViaggio');
	objTipoViaggio.style.display = 'none';
	var objCityApt = document.getElementById('cityAirports');
	objCityApt.value = '';
}

function changeDest(objDest) {				
	var objOption = objDest.options[objDest.selectedIndex];
	var propval = objOption.getAttribute("opt:propval");		
	if (propval) {
		viewWApane('home_dest_2','/booking/ajax/home_dest_2.cfm?pkpropval='+ propval);
	} else {
		viewWApane('home_dest_2','/booking/ajax/home_dest_2.cfm?msghome=true');	
		var objOption = objDest.options[objDest.selectedIndex];			
	}
	
	var oDest = document.getElementById('destination_2');
	if (oDest)
		oDest.value = objOption.text;	
		
	document.getElementById('SRC_PRP_1_desc').value =  objOption.text;
	
	viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?msghome=true');
	changeTP(objDest);
}

function changeDest2(objDest) {			
	var objOption = objDest.options[objDest.selectedIndex];
	var propval = objOption.getAttribute("opt:propval");
	if (propval) {
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?pkpropval='+ propval);
	} else {
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?msghome=true=');
	}	
	changeTP(objDest);
}
function changeDest3(objDest) {			
	var objOption = objDest.options[objDest.selectedIndex];
	var propval = objOption.getAttribute("opt:propval");

	changeTP(objDest);
}
function changeTP(objDest) {			
	var destSelected = objDest.options[objDest.selectedIndex].value;
	document.getElementById('SRC_PRP_1').value = destSelected;
	var myPane = dijit.byId("home_tipoprodotto");		
	/*if (myPane && destSelected != '') { 
		viewWApane('home_tipoprodotto','/booking/ajax/home_tipiprodotto.cfm?style=mini&destSel='+ destSelected);
	} else {
		viewWApane('home_tipoprodotto','/booking/ajax/home_tipiprodotto.cfm?style=mini&disable=true');
	}*/
	changeHomeDept();
}	
function changeDept(objSelect) {	
	showMainStack(objSelect);			
	var TpValue = objSelect.value;
	var parm2 = objSelect.getAttribute("opt:parm2");
	var bShowAptDept = objSelect.getAttribute("opt:showAptDept");
		
	var oPaxNorm = document.getElementById('pax_norm');
	var oPaxCam = document.getElementById('pax_camere');
	var lblDivPar = document.getElementById('lbl_home_Partenza');
	var imgDivPar = document.getElementById('img_home_Partenza');
	
	if (bShowAptDept== 'true') {
		document.getElementById('divAptDept').style.display = '';				
		if (oPaxNorm && oPaxCam ) {
			oPaxNorm.style.display = '';
			oPaxCam.style.display = 'none';
			imgDivPar.style.display = '';
			lblDivPar.innerHTML = "Date di partenza";
		}
	} else {
		document.getElementById('divAptDept').style.display = 'none';
		if (oPaxNorm && oPaxCam ) {
			if (parm2 == 'DES') {
				oPaxNorm.style.display = 'none'
				oPaxCam.style.display = ''
				imgDivPar.style.display = 'none';
				lblDivPar.innerHTML = "Soggiorno";	
			} else {
				oPaxNorm.style.display = 'none'
				oPaxCam.style.display = 'none'			
			}
		}				
	}
	
	viewWApane('home_dest_1','/booking/ajax/home_dest_1.cfm?destType=combo&lstTipo='+ TpValue);	
	viewWApane('home_dest_2','/booking/ajax/home_dest_2.cfm?msghome=true');	
    viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?msghome=true');	
    
	document.getElementById('SRC_PT').value= TpValue;
	document.getElementById('SRC_PT_TRANSF').value= parm2;	
	/*				
	if(parm2 == '99')	
		viewWApane('home_departures','/booking/ajax/cityAirports.cfm');
	else if(parm2 == '0')	
		changeHomeDept()
	else
    	viewWApane('home_departures','/booking/ajax/home_departures.cfm?disable=true');
    */	  	
}

function showMainStack(objCheck){
	var objTipoViaggio = document.getElementById('divTipoViaggio');
	var currentTP = objCheck.getAttribute('value');
	var objStackDest = dijit.byId('StackDest'); 	
	if (currentTP == 'ITI'){ //ITINERARI
		objTipoViaggio.style.display = '';
		objDestToView = dijit.byId('dest_empty');
		objStackDest.selectChild(objDestToView);
		viewWApane('boxTipolBook','/booking/ajax/setTipolBook.cfm?tipolBook=FD'); 
	} else if (currentTP == 'FLY'){ //SOLO VOLO	
		objTipoViaggio.style.display = 'none';	
		objDestToView = dijit.byId('volo_norm');
		objStackDest.selectChild(objDestToView);
		viewWApane('home_volo','/booking/ajax/home_solovolo.cfm?pageStyle=homepage&font=12');	
		viewWApane('boxTipolBook','/booking/ajax/setTipolBook.cfm?tipolBook=VO');
	} else {
		objTipoViaggio.style.display = 'none';
		objDestToView = dijit.byId('dest_norm');
		objStackDest.selectChild(objDestToView);
		DestType = objCheck.getAttribute('opt:parm2');
		NumTipo = objCheck.getAttribute('opt:parm1');		
		viewWApane('boxTipolBook','/booking/ajax/setTipolBook.cfm?tipolBook=LO');
	} 
	var arTipoLoc = document.getElementsByName('tipo_localita');
	for (var ii=0; ii < arTipoLoc.length; ii++) {		
		arTipoLoc[ii].checked = false;
	}
	var objCityApt = document.getElementById('cityAirports');
	objCityApt.value = '';	
	document.getElementById('divBtnSearch').style.display = '';	
}
function changeHomeDept() {		
	var lstPkPropVal = document.getElementById('SRC_PRP_1').value;
	if (lstPkPropVal != '') {			
		var parm2 = "0";//document.getElementById('SRC_PT_TRANSF').value;
		var objDateBegin = dijit.byId("SRC_PERIOD_BEGIN");
		var objDateEnd = dijit.byId("SRC_PERIOD_END");					
		if(objDateBegin)
			dateBegin = dateFormat(objDateBegin.getValue(), 'MM/dd/yyyy');		
		if(objDateEnd)
			dateEnd = dateFormat(objDateEnd.getValue(), 'MM/dd/yyyy');		
		if(dateBegin != dateEnd)
			var periodToSearch = dateBegin + ";" + dateEnd;
		else
			var periodToSearch = dateBegin;
			
		var myPane = dijit.byId("home_propdepartures");		
		if (parm2 && myPane && lstPkPropVal !='' && parm2 == '0')
			viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?lstPkpropVal='+lstPkPropVal+'&period='+ periodToSearch);	
	} else {
		viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');					
	}		
}

function changeStartDate(){
	var objStartDate = dijit.byId("SRC_PERIOD_BEGIN");
	var objEndDate = dijit.byId("SRC_PERIOD_END");

	objEndDate.setValue(dojo.date.add(objStartDate.getValue(), 'day', parseInt(7)));
	var objbutt = dijit.byId("next");
	if (objbutt)
		objbutt.focus();
	changeHomeDept();	
	//changeDept();
} 	

function changeFlyEndDate(dateSuffixField){
	if (typeof(dateSuffixField) == 'undefined')
		dateSuffixField = 'Fly';
	
	var objStartDate = dijit.byId("startDate" + dateSuffixField);
	var objEndDate = dijit.byId("endDate" + dateSuffixField);
	objEndDate.setValue(dojo.date.add(objStartDate.getValue(), 'day', parseInt(7)));
}

function changeEndDateVolosogg() {
	var objStartDate = dijit.byId("startDateVolosogg");
	var objEndDate = dijit.byId("endDateVolosogg");
	var gg = document.getElementById('gg_volosogg').value;
	objEndDate.setValue(dojo.date.add(objStartDate.getValue(), 'day', parseInt(gg)));
}

function setPeriodFly(dateSuffixField) {
	if (typeof(dateSuffixField) == 'undefined')
		dateSuffixField = 'Fly';
	var oStartDate = dijit.byId('SRC_PERIOD_BEGIN');
	var oStartDateFly = dijit.byId('startDate' + dateSuffixField);
	oStartDate.setValue(oStartDateFly.getValue());
	
	var oEndDate = dijit.byId('SRC_PERIOD_END');
	var oEndDateFly = dijit.byId('endDate' + dateSuffixField);
	oEndDate.setValue(oEndDateFly.getValue());	
}	 	
function setDepartureApt(objSelect) {
	var objCityApt = document.getElementById('cityAirports'); 
	var objOption = objSelect.options[objSelect.selectedIndex];
	var oPartCode = document.getElementById('AptDeptCod');
	if (oPartCode) {
		oPartCode.value = objOption.getAttribute('opt:codapt');
		objCityApt.value =objOption.value;
	}		
	var oPart = document.getElementById('AptDeptDesc');
	if (oPart)
		oPart.value = objOption.text;		
}	 		

function doSearch() {		
	var bProceed = true;
	var prodSelected = "";
	for (var ii=0; ii < document.SRC.SRC_PT_SRC.length; ii++) {		
		if (document.SRC.SRC_PT_SRC[ii].checked) {
			prodSelected = opt.core.trim(document.SRC.SRC_PT_SRC[ii].value);
			break;		
		}		
	}	
	switch(prodSelected){
		case '':	
			alert("Selezionare una tipologia di prodotto");								
			bProceed = false;
			break;
		case 'DIN':								
			alert("Selezionare la formula dinamica");
			bProceed = false;
			break;
		case 'FLY':
			var objAptPartName = 'cityAirportsVolo';
			var objAptDestName = 'aptDestVolo';
			var objAptPart = document.getElementById(objAptPartName);									
			var selAtpPart = objAptPart.options[objAptPart.selectedIndex].value;
			if (selAtpPart == '') {
				alert("Selezionare l'aeroporto di partenza");
				bProceed = false;
			} else {
				var objAptDest = document.getElementById(objAptDestName);		
				var selAtpDest = objAptDest.options[objAptDest.selectedIndex].value;				
				if (selAtpDest == '') {
					alert("Selezionare l'aeroporto di destinazione");
					bProceed = false;
				} 
			}
			break;
		case 'ITI':
			var bSingleLoc = true;
			for (var ii=0; ii < document.SRC.tipo_localita.length; ii++) {		
				if (document.SRC.tipo_localita[ii].checked) {
					bSingleLoc = eval(document.SRC.tipo_localita[ii].getAttribute("opt:singleloc"));
					break;		
				}		
			}	
			if (bSingleLoc) {
				var objAptPartName = 'cityAirportsVolosogg';
				var objAptDestName = 'aptDestVolosogg';
				document.getElementById('SRC_PT').value = 'HOTEL2,FLY,OTF,OTOUR,ALAU,CROCIE1,TUIN,OCORSI,CIRIND,ESCU'
			} else { // itinerari - piu' localita'
				var objAptPartName = 'firstApt';
				var objAptDestName = 'aptDest_iti';
				document.getElementById('SRC_PT').value = 'ITI'
			}	
			var objAptPart = document.getElementById(objAptPartName);									
			var selAtpPart = objAptPart.options[objAptPart.selectedIndex].value;
			if (selAtpPart == '') {
				alert("Selezionare l'aeroporto di partenza");
				bProceed = false;
			} else {
				var objAptDest = document.getElementById(objAptDestName);		
				var selAtpDest = objAptDest.options[objAptDest.selectedIndex].value;				
				if (selAtpDest == '') {
					alert("Selezionare l'aeroporto di destinazione");
					bProceed = false;
				} 
			}															
			break;	
		default:								
			var objDest = document.SRC.SRC_PRP_1.value;
			if (objDest == '') {		
				alert("Selezionare una destinazione");
				bProceed = false;
			}
			break;
	}		
	if (bProceed) {
		var bookpage = doBooking('/booking/booking.cfm');		
		document.getElementById('SRC').submit();	
		bookpage.focus();			
	}
}	

function setHiddenDest(objDest,ind) {			
	if (objDest.type == 'radio') {			
		var sDescr = objDest.getAttribute("opt:descr");
	} else {	
		var sDescr = objDest.options[objDest.selectedIndex].text;
	}
	document.getElementById('destination_' + ind).value= sDescr.toUpperCase();	
}

function countPax(suffix){	
	var numAdu = 0;
	var numChd = 0;	
	var sRoomVal = "";
	var arrayOptionPax = getElementsByAttribute('id','RoomType'+suffix, 'select');				
	for (var i=0;i < arrayOptionPax.length;i++) {
		currentValore = arrayOptionPax[i].options[arrayOptionPax[i].selectedIndex].text;
		numAdu += (arrayOptionPax[i].options[arrayOptionPax[i].selectedIndex].getAttribute('opt_numAdults'))*currentValore;
		numChd += (arrayOptionPax[i].options[arrayOptionPax[i].selectedIndex].getAttribute('opt_numChilds'))*currentValore;
		sRoomVal += arrayOptionPax[i].options[arrayOptionPax[i].selectedIndex].value + ',';
	}
	var objRoomType = document.getElementById('RoomType');	
	objRoomType.value = sRoomVal.substr(0,sRoomVal.length-1);
	document.getElementById('tot_AD' + suffix).innerHTML = numAdu;
	document.getElementById('tot_CH' + suffix).innerHTML = numChd;
	if (suffix == '_iti') {
		document.getElementById('ADULTS' + suffix).value = numAdu;
		document.getElementById('CHILDS' + suffix).value = numChd;	
	}	else{
		document.getElementById('ADULTS').value = numAdu;
		document.getElementById('CHILDS').value = numChd;	
	}
}

function setPaxStandard(field,sValue) {
	var oPax = document.getElementById(field).value = sValue;
}
function setTipoViaggio(objRadio) {
	var objStackDest = dijit.byId('StackDest');
	var bSingleLoc = eval(objRadio.getAttribute("opt:singleloc"));
	var objDestToView;
	if (bSingleLoc) {
		objDestToView = dijit.byId('dest_p2p');
		viewWApane('home_volosogg','/booking/ajax/home_volosogg.cfm?pageStyle=homepage&font=12');
	} else { 
		objDestToView = dijit.byId('dest_iti');
		viewWApane('home_itinerario','/booking/ajax/home_itinerario.cfm?pageStyle=homepage&font=12');
	}
	objStackDest.selectChild(objDestToView);
}

function changeEndDateCampagna(){
	
	var objStartDate = dijit.byId("SRC_PERIOD_BEGIN");
	var objEndDate = dijit.byId("SRC_PERIOD_END");
	nDaytoAdd = document.getElementById('gg_volosogg').value;
	objEndDate.setValue(dojo.date.add(objStartDate.getValue(), 'day', parseInt(nDaytoAdd)));
}

function doSearchCampagna() {		
	var bProceed = true;
	var prodSelected = "";
	var objAptDept = document.getElementById('cityAirportsVolosogg');
	if(objAptDept.selectedIndex < 1){
		alert("ATTENZIONE:\nSelezionare l'aereoporto di partenza");
		bProceed = false;
	}
	
	if (bProceed) {
		var bookpage = doBooking('/booking/booking.cfm');		
		document.getElementById('SRC').submit();	
		bookpage.focus();	
	}
}	