// JavaScript Document

function changeDest(objSelect) {
	var propval = objSelect.options[objSelect.selectedIndex].getAttribute("opt:pkpropval");
	if (propval != null) {
		viewWApane('home_dest_2','/booking/ajax/home_dest_2.cfm?pkpropval='+ propval);
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?disabled=true');
		var sLink = 'lstPkPropval=' + objSelect.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text;
	} else {
		viewWApane('home_dest_2','/booking/ajax/home_dest_2.cfm?disabled=true');
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?disabled=true');
		var sLink = 'disabled=true';
	}
	document.getElementById('SRC_PRP_1').value =  objSelect.value;
	document.getElementById('PRP_1').value =  objSelect.value;
		
	viewWApane('home_prodotti', '/booking/ajax/selProdotto.cfm?' + sLink , 'Caricamento strutture...');
	viewWApane('home_datedepartures','/booking/ajax/selDatePartenza.cfm?' + sLink , 'Caricamento date partenza...');
	viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true'); 
}

function changeDest2(objSelect) {	
	var propval = objSelect.options[objSelect.selectedIndex].getAttribute("opt:pkpropval");
	if (propval != null) {
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?pkpropval='+ propval);	
	} else {
		objSelect = document.getElementById('prp1_liv_1');
		viewWApane('home_dest_3','/booking/ajax/home_dest_3.cfm?disabled=true');
	}	
	document.getElementById('SRC_PRP_1').value = objSelect.value;
	document.getElementById('PRP_1').value = objSelect.value;
	
	viewWApane('home_prodotti', '/booking/ajax/selProdotto.cfm?lstPkPropval=' + objSelect.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text, 'Caricamento strutture...');
	viewWApane('home_datedepartures','/booking/ajax/selDatePartenza.cfm?lstPkPropval=' + objSelect.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text, 'Caricamento date partenza...');
	viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
}

function changeDest3(objSelect) {	
	if (objSelect.value == '')
		objSelect = document.getElementById('prp1_liv_2');
		
	document.getElementById('SRC_PRP_1').value = objSelect.value;
	document.getElementById('PRP_1').value = objSelect.value;	
	
	viewWApane('home_prodotti', '/booking/ajax/selProdotto.cfm?lstPkPropval=' + objSelect.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text, 'Caricamento strutture...');
	viewWApane('home_datedepartures','/booking/ajax/selDatePartenza.cfm?lstPkPropval=' + objSelect.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text, 'Caricamento date partenza...');
	viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
}

function setStartDateProd(objProd) {
	var objSelect = document.getElementById('prp1_liv_3'); 
	if (objSelect.selectedIndex < 1) {
		objSelect = document.getElementById('prp1_liv_2'); 
		if (objSelect.selectedIndex <1)
			objSelect = document.getElementById('prp1_liv_1');
	}
	var sUrl = "/booking/ajax/selDatePartenza.cfm?lstPkPropval=" + objSelect.value + '&pkprod=' + objProd.value + '&destName=' + objSelect.options[objSelect.selectedIndex].text;
	viewWApane('home_datedepartures',sUrl, '<center><img src="/booking/images/ajax-loader.gif">Caricamento date partenza...</center>');
	document.getElementById('DURATA').value = '';
	viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
}

function selStartDate(objSelStartDate){
	var objOptionSelected = objSelStartDate.options[objSelStartDate.selectedIndex];
	var durata = objOptionSelected.getAttribute('opt:durata');
	var strStartDate = objSelStartDate.value;
	var arDate = strStartDate.split('-'); 
	var thisDate = new Date();			

	thisDate.setYear(arDate[0]);
	thisDate.setMonth(eval(arDate[1])-1,arDate[2]);
	
	var dateStart = dojo.date.add(thisDate,'day',parseInt(0));	
	var dateEnd = dojo.date.add(thisDate,'day',parseInt(durata));
	
	var objBeginDate = dijit.byId('SRC_PERIOD_BEGIN');
	var objEndDate = dijit.byId('SRC_PERIOD_END');
	
	objBeginDate.setValue(dateStart);
	objEndDate.setValue(dateEnd);
	
	document.getElementById('DURATA').value = durata;
	
	var objAptDep = dijit.byId('home_propdepartures');
	if (objAptDep) {
		if (objSelStartDate.selectedIndex > 0) 
			changeHomeDept();
		else
			viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
	}		 
}

function doSearch() {
	var selDest = opt.core.trim(document.getElementById('PRP_1').value);
	if (selDest == '') {		
		alert("Selezionare una destinazione");
		return;
	} else {
		var arDest = selDest.split(',');
		if (arDest.length > 50) {
			alert("Attenzione:\ndefinire una ricerca piu' accurata specificando un ulteriore livello di destinazione.");
			return;
		} 
	}
	
	var objDatePartenza = document.getElementById('selDatePartenza');
	if (objDatePartenza == null || objDatePartenza.selectedIndex == 0) {
		alert('Selezionare la data di partenza');
		return;	
	}
	
	var objTotPax = document.getElementById('ADULTS');
	if (parseInt(objTotPax.value) == 0){
		alert("Attenzione: definire il numero di passeggeri");								
		return;
	}

	var bookpage = doBooking('/booking/booking.cfm');		
	document.getElementById('SRC').submit();	
	bookpage.focus();					
}

function changeHomeDept() {		
	var lstPkPropVal = document.SRC.SRC_PRP_1.value;
	if (lstPkPropVal != '') {	
		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 pkprod = ''	
		var ojbProd = document.getElementById('SRC_PKPROD');
		if (ojbProd.selectedIndex > 1) 
			pkprod = ojbProd.options[ojbProd.selectedIndex].value;
			
		viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?lstPkpropVal='+lstPkPropVal+'&period='+ periodToSearch + '&pkprod=' + pkprod);					
	} else
		viewWApane('home_propdepartures','/booking/ajax/home_departures.cfm?disable=true');
}

function countPax(){
	var numAdu = 0;
	var numChd = 0;	
	
	var arrayOptionPax = getElementsByAttribute('name','RoomType', '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;
	}
	document.getElementById('ADULTS').value = numAdu;
	document.getElementById('CHILDS').value = numChd;	
}