/*
 * Created on 05/10/2006 by Alan Lois
 * Version 1.0 on 05/10/2006 by Alan Lois
 */

//PACKAGES
	/**
	*Funcion que carga los campos del formulario de busqueda con
	*los datos que contiene la cookie.
	*/
	function setPackagesFormDataFromCookie(cookieObj){
		var formId = 'formSearch';
		var f = $(formId);
		
		var tempValues = null;

		//Si hay datos del formulario de busquedas anteriores en la cookie
		//alert("setPackagesFormDataFromCookie: cookieObj.getValues().length: "+ cookieObj.getValues().length);
		if(cookieObj.getValues().length>0){
			//pedimos datos
			var aData = cookieObj.getValuesArrayByName(PACKAGES_DATA);
			if(aData !=null && aData.length>0){
					/*alert("setPackagesFormDataFromCookie: " + "\r\n" 
							+ "aData = cookieObj.getValuesArrayByName(PACKAGES_DATA) = " + aData
						);
					*/
				
				//DEPARTURE DATE
				_loadDepartureDate(aData, f, formId);
				
				//DESTINATION (es un par de numeros de un combo)
				tempValues = _getValuesArrayByPrefix(aData, DESTINATION_PREFIX);
				if(tempValues!=null && tempValues[1]!=null && tempValues[1]!="undefined") f.cmbDestination.value=tempValues[1];
				
				changeDestination(); // con esto cargamos zonas y origenes en sus combos para poder seleccionar alguno
				
				/*Estos SELECTs, en lugar de usarlos aqui, se seleccionan en el populateZones y populateOrigins para que de tiempo a cargarse los OPTIONs de cada SELECT
				*DWRUtil.setValue("cmbZone",cookieObj.getValueByName("cmbZone"));
				*DWRUtil.setValue("cmbOrigin",cookieObj.getValueByName("cmbOrigin"));
				*/
				//setDateFromCombos(); // guardamos la fecha en el campo hidden en el formato que se necesita

				//ROOMS - DISTRIBUTION
				_loadRoomsPackages(aData, f);

			}//if
		}//if
	}//function
	
	/**
	* Establece los datos a guardar en el objeto cookie y luego
	* escribe lo guarda todo en el cliente
	*/
	function setPackagesCookie(cookieObj, id){
		var formId = 'formSearch';
		var f = $(formId);
		cookieObj.clear();	//Borra los datos (names y values) del objeto cookie
		
		//metemos los datos			
		var data = new Array();
	
		//DEPARTURE DATE
		_addDepartureDate(data, f)
		
		//DESTINATION & ZONE
		_addDestinationPackages(data, f);
		
		//ORIGIN
			//alert("setPackagesCookie: f.cmbZone.value = " + f.cmbZone.value);
		if(f.cmbOrigin) data.push(ORIGIN_PREFIX + VALUES_SEPARATOR + f.cmbOrigin.value);
		
		//ROOMS	- DISTRIBUTION
		_addRoomsPackages(data, f);
		
		cookieObj.addNameAndValuesArray(PACKAGES_DATA, data);

		//ZONE & ORIGIN
		//Importante: estos DEBEN IR ASI,
		//ya que estos se cargan OBLIGATORIAMENTE en packagesSearch.jsp 
		//(porque los valores del combo se cargan por ajax)
		//cookieObj.addNameAndValue("cmbZone", f.cmbZone.value);
		//cookieObj.addNameAndValue("cmbOrigin", f.cmbOrigin.value);
		
		//escribimos (guardamos) la cookie en el cliente
		cookieObj.write(id);
	}
	
//CIRCUITS
	
	/**
	*Funcion que carga los campos del formulario de busqueda con
	*los datos que contiene la cookie.
	*/
	function setCircuitsFormDataFromCookie(cookieObj){
		var formId = 'formSearchCircuits';
		var f = $(formId);
		
		var tempValues = null;

		//Si hay datos del formulario de busquedas anteriores en la cookie
		//alert("dentro de setCircuitsFormDataFromCookie. " + "\r\n" + "cookieObj.getValues().length: "+ cookieObj.getValues().length);
		if(cookieObj.getValues().length>0){
			//pedimos datos
			var aData = cookieObj.getValuesArrayByName(CIRCUITS_DATA);
			if(aData !=null && aData.length>0){
					/*alert("setCircuitsFormDataFromCookie: " + "\r\n" 
							+ "aData = cookieObj.getValuesArrayByName(CIRCUITS_DATA) = " + aData
						);
					*/
				
				//DEPARTURE DATE
				_loadDepartureDate(aData, f, formId);
				
				//DESTINATION (es un par de numeros de un combo)
				tempValues = _getValuesArrayByPrefix(aData, DESTINATION_PREFIX);
				if(tempValues!=null && tempValues[1]!=null && tempValues[1]!="undefined") f.cmbDestination_1.value=tempValues[1];
				
				//bSelectZone = true;
				loadDepartureCombo(1); // con esto cargamos departures en su combo para poder seleccionar alguno
				
				/*Estos SELECTs, en lugar de usarlos aqui, se seleccionan en el populateZones y populateOrigins para que de tiempo a cargarse los OPTIONs de cada SELECT
				*DWRUtil.setValue("cmbZone",cookieObj.getValueByName("cmbZone"));
				*DWRUtil.setValue("cmbOrigin",cookieObj.getValueByName("cmbOrigin"));
				*/
				//setDateFromCombos(); // guardamos la fecha en el campo hidden en el formato que se necesita
			}//if
		}//if
	}//function
	
	/**
	* Establece los datos a guardar en el objeto cookie y luego
	* escribe lo guarda todo en el cliente
	*/
	function setCircuitsCookie(cookieObj, id){
		var formId = 'formSearchCircuits';
		var f = $(formId);
		
		cookieObj.clear();	//Borra los datos (names y values) del objeto cookie
	
		//metemos los datos			
		var data = new Array();
	
		//DEPARTURE DATE
		_addDepartureDate(data, f)
		
		//DESTINATION
		if(f.cmbDestination_1) data.push(DESTINATION_PREFIX + VALUES_SEPARATOR + f.cmbDestination_1.value);
		
		//DEPARTURE
			/*alert("setCircuitsCookie: f.cmbDeparture_1.value = " + f.cmbDeparture_1.value + "\r\n"
					+ "f.cmbDeparture_1.options[f.cmbDeparture_1.selectedIndex].text = " + f.cmbDeparture_1.options[f.cmbDeparture_1.selectedIndex].text
				);
			*/
		if(f.cmbDeparture_1) data.push(DEPARTURE_PREFIX + VALUES_SEPARATOR + f.cmbDeparture_1.value);
		
		cookieObj.addNameAndValuesArray(CIRCUITS_DATA, data);

		//DEPARTURE
		//Importante: estos DEBEN IR ASI,
		//ya que estos se cargan OBLIGATORIAMENTE en packagesSearch.jsp 
		//(porque los valores del combo se cargan por ajax)		
		//cookieObj.addNameAndValue("cmbDeparture_1", f.cmbDeparture_1.value);
		
		//escribimos (guardamos) la cookie en el cliente
		cookieObj.write(id, "/viajes/holidays");
	}
	