//<script type="text/javascript">

		//variables fijas, no tocar

	/*	var d1;											//objetos date

		var d2;

		var c1 = new Calendar(1, d1, onSelect1, null);  //calendarios 	

		var c2 = new Calendar(1, d2, onSelect2, null);

		var arr_Precios1=new Array();					//arrays de precios inicilializados

		var arr_Precios2=new Array();	//Realizando búsqueda...

		var searchMsg = '<table class="horarios" summary="Horarios" cellspacing="0" border="1" align="center">'

						+ '<caption>Realizando búsqueda...</caption>'

						+ '<tbody></tbody></table>';	//mensaje de busqueda 		

		var searchMsgCalendar = '<strong>Buscando calendario de precios...</strong>';	//mensaje de busqueda 	

		var cabeceraVtaTxt = '<h4>Vuelo de vuelta</h4>';

		var v_tarificacionRT ='N';

		var julian_timida ='';

		var julian_timvta ='';

		var ofe_ida ='';

		var ofe_vta ='';



		var flashObject='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="275" height="80">'

			+'<param name="movie" value="swf/loading.swf" />'

			+'<param name="quality" value="high" />'

			+'<embed src="swf/loading.swf" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="275" height="80">'+'</embed>'

			+'</object>';

		//pasajeros seleccion (combos)

		var numpaxida = null;		var numpaxvta = null;

		var today = new Date();  //fecha de carga para controlar eventos de seleccion de calendario  (Evento onSelect)

		today.setHours(0,0,0,0);

*/

		function getFlashObj(h,w){

			var flashTxt='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+w+'" height="'+h+'">'

			+'<param name="movie" value="swf/loading.swf" />'

			+'<param name="quality" value="high" />'

			+'<embed src="swf/loading.swf" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="'+w+'" height="'+h+'">'+'</embed>'	+'</object>';

			return flashTxt;

		}

		function generaCombosPax(){

			//genera los combos de pasajeros a partir de la disponibilidad seleccionada

			numpaxida = (isNaN(numpaxida)||numpaxida==null)? 9 : numpaxida;			//en caso de valor no valido o numpax nulo 

			numpaxvta = (isNaN(numpaxvta)||numpaxvta==null)? 9 : numpaxvta;

			if (numpaxida < numpaxvta){					paxcombo = numpaxida;

			}else{										paxcombo = numpaxvta;		}

			var posCombo = 0;

			document.getElementById('comboinf').options.length = 0;				

			document.getElementById('comboadl').options.length = 0;				

			document.getElementById('combochd').options.length = 0;				

			for (numpax=0;numpax<=paxcombo;numpax++){

				if (numpax > 0)		  generaOpcionCombo(numpax,numpax,'comboadl', posCombo -1);	  //el 0 no existe para adultos

				if (numpax < paxcombo)generaOpcionCombo(numpax,numpax,'combochd', posCombo);  //uno menos que adulto

				generaOpcionCombo(numpax,numpax,'comboinf', posCombo);						  //infants => todos

				posCombo++;

			}

		}



		function validaPaxes(){

			adl = parseInt(document.getElementById('comboadl').value);

			chd = parseInt(document.getElementById('combochd').value);

			inf = parseInt(document.getElementById('comboinf').value);

			numpaxida = (isNaN(numpaxida)||numpaxida==null)? 9 : numpaxida;	//en caso de valor no valido o numpax nulo 

			numpaxvta = (isNaN(numpaxvta)||numpaxvta==null)? 9 : numpaxvta;

			maxpax = (numpaxida < numpaxvta) ? numpaxida : numpaxvta;

			//alert('adultos: '+adl+' niños: '+chd+' bebes: '+inf+' numpaxida: '+numpaxida+' numpaxvta: '+numpaxvta+' maxpax: '+maxpax);

			if (adl+chd > maxpax){

				alert('El número total de adultos y niños debe ser menor o igual a '+maxpax);

				generaCombosPax();

				return;

			}

			if (adl+chd < inf){

				tot = adl+chd;

				alert('El número de bebés debe ser menor o igual a '+tot);

				generaCombosPax();

				return;

			}

		}



		function showInfoPrecioMenu(valor){

			if (valor == 1){	changeVisibility('publicidad','hide');	changeVisibility('infoViaje','show');	//lo mostramos

			}else{				changeVisibility('infoViaje','hide');	changeVisibility('publicidad','show');	//lo ocultamos

			}

		}





		//variables de importes (suma total para usuario)

	/*	var l_impfee   =0;	var l_imptaxtotal=0;	

		var l_imptaxida=0;	var l_imptaxvta=0;

		var l_impbaseida=0;	var l_impbasevta=0;

		var l_imptotal=0;

		var l_coddiv;

		var ptos_ida=0;

		var ptos_vta=0;

		//

		var l_resfee   =0;

		var l_resida   =0;

		var l_resvta   =0;

		*/

		//function setInfoTime(horasalida,horallegada,coste,divisa,sentido)

		//function setInfoCostes(tasas,sfee,total,divisa,residente)

		function setVueloV3(hdep,harr,impbase,imptax,impfee,impfeeRes,impbaseRes,puntos,coddiv,codvuelo,codcla,codfb,sentido,info_adic,plazas,milis,seqofe){	

      l_resvta=0;
			if (puntos!=''){v_puntos=parseInt(puntos);

			}else{			v_puntos=0;			}

/*			alert(hdep + ' - ' + harr + '\n'

			+	codvuelo + '-'+codcla + '-' + codfb + '-'+sentido+'\n'

			+	impbase + '-'+ impbaseRes + '-'+ impfee +'-'+ impfeeRes+ '-'+ imptax);*/

			setInfoTime(hdep,harr,impbase,coddiv,sentido,info_adic);		//set del vuelo seleccionado en el menu

			putPlazasDia(sentido,plazas);									//redimensionamos combos y escribimos plazas

			if (sentido =='ida'){	

				ptos_ida=v_puntos;

				numpaxida	 = parseFloat(plazas.replace(',','.'));	

				l_impbaseida = parseFloat(impbase.replace(',','.'));						

				l_imptaxida	 = parseFloat(imptax.replace(',','.'));						

				document.getElementById('codbloqida').value=codvuelo;		//set del formulario de bloqueo

				julian_timida =parseFloat(milis.replace(',','.'));						

				ofe_ida =seqofe;

				if (impbaseRes!=''){//se trata de dcto residente

					l_resida = parseFloat(impbaseRes.replace(',','.'));						

					l_resfee = parseFloat(impfeeRes.replace(',','.'));						

				}else{

					l_resida = 0;						

					l_resfee = 0;						

				}
				
/*				alert('l_impfee:'+l_impfee);
        alert('l_imptaxtotal:'+l_imptaxtotal);
        alert('l_imptaxida:'+l_imptaxida);
        alert('l_imptaxvta:'+l_imptaxvta);
        alert('l_impbaseida:'+l_impbaseida);
        alert('l_impbasevta:'+l_impbasevta);
		    alert('l_imptotal:'+l_imptotal);*/

			}else{				

				ptos_vta=v_puntos;			

				numpaxvta	 = parseFloat(plazas.replace(',','.'));	

				l_impbasevta = parseFloat(impbase.replace(',','.'));						

				l_imptaxvta	 = parseFloat(imptax.replace(',','.'));						

				document.getElementById('codbloqvta').value=codvuelo;		//set del formulario de bloqueo

				julian_timvta =parseFloat(milis.replace(',','.'));						

				ofe_vta =seqofe;

				if (impbaseRes!=''){//se trata de dcto residente

					l_resvta = parseFloat(impbaseRes.replace(',','.'));						

					l_resfee = parseFloat(impfeeRes.replace(',','.'));						

				}else{

					l_resvta = 0;						

					l_resfee = 0;						

				}

			}

			l_impfee	  = parseFloat(impfee.replace(',','.'));	

			l_coddiv	  =	coddiv;

			showtotal();

			showInfoPuntos();

			generaCombosPax();			//generamos combo a partir de seleccion de usuario

		}

		function showInfoPuntos(){

			if ((ptos_vta + ptos_ida)>0){

				var divinfoPuntos = '';

				divinfoPuntos= '<div id="infoTotal">';

				divinfoPuntos+='<h4>Para cada titular<br/>'+parseInt(ptos_vta + ptos_ida)+'&#160;ptos Fidelitas</h4>';

				divinfoPuntos+='</div>';

				writeObj(divinfoPuntos,'infoPuntos');

			}else{

				writeObj('','infoPuntos');

			}

		}

	

		function valida_horasvuelos(){  //&&

			if(document.getElementById('codbloqida').value != '' && document.getElementById('codbloqvta').value!='' && radio_button_checker('document.foTiptra.rbtn_tiptra') =='RT'){

				// Rafa: se le suma 0.144 a la hora de la ida para que

				// entre la LLEGADA de la ida y la SALIDA de la vuelta

				// haya como mínimo 4 horas de diferencia.

			

				var julian_timida_4 = julian_timida + 0.144;

				//alert('ida: ' + julian_timida + 'ida + 4 horas: ' + julian_timida_4 + ' vuelta: ' + julian_timvta);

				

				if (julian_timida_4 > julian_timvta){	return false;

				}else{									return true;

				}

			}

			return true;

		}



		function valida_seleccion(){

			if(radio_button_checker('document.foTiptra.rbtn_tiptra') =='RT'){

				if (document.getElementById('codbloqida').value != '' && document.getElementById('codbloqvta').value !=''){return true;

				}else{return false;}

			}else{

				if (document.getElementById('codbloqida').value != ''){return true;

				}else{return false;}

			}

		}



		function valida_ofertas(){//&&

			if(radio_button_checker('document.foTiptra.rbtn_tiptra') =='RT'){

				if (ofe_ida != '' && (ofe_vta == '' || ofe_vta == null)){	return false;			}

				if ((ofe_ida == '' || ofe_ida == null) && ofe_vta != ''){	return false;			}	

				return true;

			}

			return true;

		}



		function showDctoResi(total,coddiv,dcto){

			var divinfoResi = '';

			divinfoResi= '<div id="infoTotal">';

			divinfoResi+='<strong id="descuento">'+total+' '+coddiv+' <br/>(-'+dcto+'% dto. residente)'+'</strong>'

			divinfoResi +='</div>';

			writeObj(divinfoResi,'infoCosteResi');

		}



		function showtotal(){

			l_imptaxtotal = l_imptaxida   + l_imptaxvta;

			l_imptotal	  = l_imptaxtotal + l_impfee + l_impbaseida + l_impbasevta;

			//mostramos info costes asociados

			setInfoCostes(l_imptaxtotal.toFixed(2),l_impfee.toFixed(2),l_imptotal.toFixed(2),l_coddiv,'n');	

			if (l_resida!=0){	

/*alert('l_resfee:'+l_resfee);
alert('l_resida:'+l_resida);
alert('l_resvta:'+l_resvta);
alert('l_imptaxtotal:'+l_imptaxtotal);*/

				l_impresidente = l_resfee + l_resida + l_resvta + l_imptaxtotal;

				showDctoResi(l_impresidente.toFixed(2),l_coddiv,'50');

			}else{

				writeObj('','infoCosteResi');

			}

		}



		//

		function setDisponibilidad(content,opener){			

			var divId;		//guarda el contenido lanzado en el iframe sobre el marco de disponibilidad de la ventana

			if (opener =='ifDispoI'){

				divId='dispoBox1';

				changeVisibility('loadingIda','hide');

			}

			if (opener =='ifDispoV'){

				divId='dispoBox2';

				changeVisibility('loadingVta','hide');

			}

			writeObj(content,divId);			

		}





		function submit_SearchV3(){			//realiza la busqueda de calendario, e inicializa la reserva

			resetAll();

			v_swida  = radio_button_checker('document.foTiptra.rbtn_tiptra');

			v_tipcab = radio_button_checker('document.foTiptra.rbtn_tipcab');

			v_aptdep = document.getElementById('combo_aptdep').value;

			v_aptarr = document.getElementById('combo_aptarr').value;			

			if (v_aptarr==''){		return false;			}

			var descAptDep = getAptName(v_aptdep);

			var descAptArr = getAptName(v_aptarr);			

			// creamos el trayecto en el menu derecha

			var txtIda = '<span class="destacado">Ida: </span><strong>'+descAptDep+' > '+descAptArr+'</strong>'

			var txtVta = '<span class="destacado">Vuelta: </span><strong>'+descAptArr+' > '+descAptDep+'</strong>'

			writeObj(txtIda,'descripTraIda');

			if (v_swida == 'RT'){	writeObj(txtVta,'descripTraVta');		

			}else{					writeObj('<br/> ','descripTraVta');

			}

			//

			document.foCalendario.p_aptdep.value=v_aptdep;

			document.foCalendario.p_aptarr.value=v_aptarr;

			document.foCalendario.p_swiv.value=v_swida;

			document.foCalendario.p_tipcab.value=v_tipcab;

			document.foCalendario.xsid.value = document.foLogin.xsid.value;

			document.foCalendario.submit();

			//

		/*	document.foCalendarioDebug.p_aptdep.value=v_aptdep;

			document.foCalendarioDebug.p_aptarr.value=v_aptarr;

			document.foCalendarioDebug.p_swiv.value=v_swida;

			document.foCalendarioDebug.p_tipcab.value=v_tipcab;

			document.foCalendarioDebug.submit();*/



			setInfoApts(v_aptdep,v_aptarr,descAptDep,descAptArr,v_swida);			//mostramos la primera fase de menu

			showInfoPrecioMenu(1);

			document.getElementById('calendarInfo').style.height='20px';

			writeObj(searchMsgCalendar,'calendarInfo');						



		}



   		function putPlazasDia(sentido,plazas){			

		//escribe mensaje con las plazas restantes en una disponibilidad

			var txt1 ='<span class="destacado">Reserva ya:&nbsp;</span>Solo quedan <strong>';

			var txt2 =' plazas</strong> con esta tarifa';

			var txtnot1='<span class="label">Si desea reservar un vuelo para m&aacute;s de <strong>';

			var txtnot2='</strong> personas, puede hacer dos reservas: una con esta tarifa y otra con una tarifa superior para el resto de viajeros.'

			var msg='';

			var msg2='';

			if (plazas !=''){

				msg= txt1 + plazas + txt2;

				msg2= txtnot1+plazas+txtnot2;

			}		

			writeObj(msg2,'plazasnota');			

			if (sentido=='ida'){		

			writeObj(msg,'plazasida');

			}else{

			writeObj(msg,'plazasvta');

			}					

		}/*

		function putPlazasDia(sentido,plazas){			//escribe mensaje con las plazas restantes en una disponibilidad

			var txt1 ='<span class="destacado">Reserva ya:&nbsp;</span>Solo quedan <strong>';

			var txt2 =' plazas</strong> con esta tarifa';

			var msg='';

			if (plazas !=''){msg= txt1 + plazas + txt2;		}

			if (sentido=='ida'){		writeObj(msg,'plazasida');

			}else{						writeObj(msg,'plazasvta');

			}					

		}   */



		function set_CalendarsData(arrida,arrvta){			//reconstruye los calendarios de precios en base a los datos pasados

			//borramos contenido 

			arr_Precios1 = arrida;		c1.refresh();			c1.show();

			arr_Precios2 = arrvta;		c2.refresh();			c2.show();

			writeObj('','calendarInfo');		

			document.getElementById('calendarInfo').style.height='0px';

		}



		function set_calendarIda(){			

			// generamos el calendario asociado a la ida (constructor)

			c1 = new Calendar(1, d1, onSelect1, null,"c1");

			c1.setDateFormat("%d/%m/%Y");

			c1.setRange(d1.getFullYear(), d1.getFullYear()+1);

			c1.weekNumbers = false;

			c1.yearStep = 1;

			c1.getDateStatus = function(date) {

				var min = new Date(); 

				var max = new Date();				// Margen de funcionamiento: desde hoy hasta dentro de un año (365 días)

				min.addDays(-1);

				max.addDays(365);



				//if (typeof(arr_Precios1[date.print("%d/%m/%Y")]) != "undefined" && arr_Precios1[date.print("%d/%m/%Y")][1] < 0) return true;

				// ***** Deshabilita los días que no están en caché -> el número de paxes es cero

				// Si este if está activado, el día no se podrá seleccionar, para que sea seleccionable,

				// hay que comentar este if y dejar sin comentar el que pone alternativa



				if (date.getTime() < min.getTime() || date.getTime() > max.getTime()) return true; 

				else return false; 

			}

			c1.getDateText = function (date, iday) {	

				var txt  = '<div class="precio">&#160;</div>';

				if (typeof(arr_Precios1[date.print("%d/%m/%Y")]) != "undefined"){

					if (arr_Precios1[date.print("%d/%m/%Y")][1] > 0){

						txt = '<div class="precio">' + arr_Precios1[date.print("%d/%m/%Y")][0]	+'</div>';

						return '<div class="dia">' + iday + '</div>' + txt;

					}

					else{

						// ***** ALTERNATIVA: Deshabilita pero se permite seleccionar los días que no están en caché

						return '<div class="no_sel"><div class="dia">' + iday + '</div></div>' + txt;

					}

				}

				else{

					return '<div class="dia">' + iday + '</div>' + txt;

				}

				/*if (typeof(arr_Precios1[date.print("%d/%m/%Y")]) != "undefined"){

					txt = '<div class="precio">' + arr_Precios1[date.print("%d/%m/%Y")][0]	+'</div>';

				}

				return '<div class="dia">' + iday + '</div>' + txt ;*/

				//return iday;

			}

			c1.create(document.getElementById("cal1"));

//			c1.hide();

			c1.show();

		}	



		function set_calendarVta(){

			// generamos el calendario asociado a la vta (constructor)

			// Calendario DOS

			c2 = new Calendar(1, d2, onSelect2, null,"c2");

			c2.setDateFormat("%d/%m/%Y");

			c2.setRange(d1.getFullYear(), d1.getFullYear()+1);

			c2.weekNumbers = false;

			c2.yearStep = 1;

			c2.getDateStatus = function(date) {				// Margen de funcionamiento: desde hoy hasta dentro de un año (365 días)

				var min = new Date(); 

				var max = new Date();

				min.addDays(-1);

				max.addDays(365);



				if (radio_button_checker('document.foTiptra.rbtn_tiptra') !='RT') return true;

				// Deshabilita el calendario de la derecha si es solo ida

				

				//if (typeof(arr_Precios2[date.print("%d/%m/%Y")]) != "undefined" && arr_Precios2[date.print("%d/%m/%Y")][1] < 0) return true;

				// ***** Deshabilita los días que no están en caché -> el número de paxes es cero

				// Si este if está activado, el día no se podrá seleccionar, para que sea seleccionable,

				// hay que comentar este if y dejar sin comentar el que pone alternativa



				if (date.getTime()< min.getTime() || date.getTime() > max.getTime() ||date.getTime() < c1.date.getTime())

				{	

					if(date.getTime() < c1.date.getTime()) return true;

				}else return false;



				//if (date.getTime() < min.getTime() || date.getTime() > max.getTime() || date.getTime() < c1.date.getTime()) return true; 

				//else return false; 

			}

			c2.getDateText = function (date, iday) {

				var txt  = '<div class="precio">&#160;</div>';

				if (typeof(arr_Precios2[date.print("%d/%m/%Y")]) != "undefined"){

					if (arr_Precios2[date.print("%d/%m/%Y")][1] > 0){

						txt = '<div class="precio">' + arr_Precios2[date.print("%d/%m/%Y")][0]	+'</div>';

						return '<div class="dia">' + iday + '</div>' + txt;

					}

					else{

						// ***** ALTERNATIVA: Deshabilita pero se permite seleccionar los días que no están en caché

						return '<div class="no_sel"><div class="dia">' + iday + '</div></div>' + txt;

					}

				}

				else{

					return '<div class="dia">' + iday + '</div>' + txt;

				}

				/*if (typeof(arr_Precios2[date.print("%d/%m/%Y")]) != "undefined"){

					txt = '<div class="precio">' + arr_Precios2[date.print("%d/%m/%Y")][0]	+'</div>';

				}

				return '<div class="dia">' + iday + '</div>' + txt ;*/

			}

			c2.electric=false;

			c2.create(document.getElementById("cal2"));

//			c2.hide();

			c2.show();

		}



		function onSelect1(calendar, date) {	

			if (c1.dateClicked){

				var newdate = new Date(c1.date.getTime());

				if (newdate < today ){

					writeObj('','dispoBox1');

					writeObj('','plazasida');

					//fecha incorrecta, quitamos datos adicionales

				}

				else{

					if (c2.date.getTime() < c1.date.getTime()) {

						c2.setDate(newdate);

						if (radio_button_checker('document.foTiptra.rbtn_tiptra') == 'RT'){

							setInfoDate(c2.date.print("%d-%m-%Y"),'vta');

							enviaPeticionDispo('vta');

						}

					}else {

						c2.refresh();

					}

					datediff = c2.date.getTime() - c1.date.getTime();			

					enviaPeticionDispo('ida');				//creamos peticion y lanzamos;

					setInfoDate(c1.date.print("%d-%m-%Y"),'ida');				//generamos info en menu derecha

					writeObj('','plazasida');

					writeObj('','infoCoste');

					writeObj('','infoCosteResi');

					document.getElementById('codbloqida').value='';

				}

			}

			else{

				var firstOfMonth = new Date(c1.date.getFullYear(), c1.date.getMonth(), 1);

				var now = new Date();

				now.setHours(0,0,0,0);

				//alert(firstOfMonth + ' ' + now);

				if (firstOfMonth < now){

					firstOfMonth = now;

				}

				c1.setDate(firstOfMonth);

				// Si no está seleccionado es debido a que hemos seleccionado el mes siguiente o anterior

				// y por eso le ponemos una fecha nueva que será la misma pero a día 1 de mes

				c1.currentDateEl.className="day";

				//deshabilitamos el boton de seleccionado

				writeObj('','plazasida');

				writeObj('','infoCoste');

				writeObj('','infoCosteResi');

				writeObj('','dispoBox1');

				//borramos todo lo relacionado con anterior seleccion

				writeObj('','infoPuntos');

				document.getElementById('codbloqida').value='';

				c2.refresh();

				if (!c2.dateClicked) {

					c2.currentDateEl.className="day";

					writeObj('','dispoBox2');

				}

			}

		}



		function onSelect2(calendar, date) {

			if (c2.dateClicked){

				if (radio_button_checker('document.foTiptra.rbtn_tiptra') =='RT'){

					if ((c2.date.getTime() < today) || (c2.date.getTime() < c1.date.getTime())) {

						writeObj('','dispoBox2');	writeObj('','plazasvta');

						//fecha incorrecta, quitamos datos adicionales

					}

					else{

						datediff = c2.date.getTime() - c1.date.getTime();

						enviaPeticionDispo('vta');

						setInfoDate(c2.date.print("%d-%m-%Y"),'vta');

						//generamos info en menu derecha

						writeObj('','plazasvta');

						writeObj('','infoCoste');

						writeObj('','infoCosteResi');

						document.getElementById('codbloqvta').value='';

					}

				}

			}

			else{	

				var firstOfMonth = new Date(c2.date.getFullYear(), c2.date.getMonth(), 1);

				var now = new Date();

				now.setHours(0,0,0,0);

				//alert(firstOfMonth + ' ' + now);

				if (firstOfMonth < now){

					firstOfMonth = now;

				}

				c2.setDate(firstOfMonth);

				// Si no está seleccionado es debido a que hemos seleccionado el mes siguiente o anterior

				// y por eso le ponemos una fecha nueva que será la misma pero a día 1 de mes

				c2.currentDateEl.className="day";

				//deshabilitamos el boton de seleccionado

				writeObj('','plazasvta');

				writeObj('','infoCoste');

				writeObj('','infoCosteResi');

				writeObj('','dispoBox2');

				//borramos todo lo relacionado con anterior seleccion

				writeObj('','infoPuntos');

				document.getElementById('codbloqvta').value='';

			}

		}



		function enviaPeticionDispo(sentido){

			if (v_tarificacionRT == 'N') {

				//mostramos la informacion en el campo de disponibilidad

				var txtBox = (sentido == 'ida')?'dispoBox1':'dispoBox2';//buscamos el campo adecuado para mostrar 

				document.getElementById(txtBox).style.height='auto';    //cambiamos altura para mostar mensaje

				writeObj('',txtBox);								//borramos todo lo relacionado con anterior seleccion

				writeObj('','infoPuntos');

				//hacemos el set de los campos del formulario y submitamos

				v_swida  = radio_button_checker('document.foTiptra.rbtn_tiptra');

				v_tipcab = radio_button_checker('document.foTiptra.rbtn_tipcab');

				v_aptdep = document.getElementById('combo_aptdep').value;

				v_aptarr = document.getElementById('combo_aptarr').value;			

				if (sentido=='ida'){

					changeVisibility('loadingIda','show');

					document.getElementById("paramfechaida").value=c1.date.print("%d/%m/%Y");  //campo del formulario

					document.foDispoIda.p_auxaptdep.value=v_aptdep;

					document.foDispoIda.p_auxaptarr.value=v_aptarr;

					document.foDispoIda.p_auxtipcab.value=v_tipcab;

					document.foDispoIda.p_auxswiv.value	 =v_swida;

					document.foDispoIda.xsid.value = document.foLogin.xsid.value;

					

					/*alert(document.getElementById("paramfechaida").value);

					alert(document.foDispoIda.p_auxaptdep.value);

					alert(document.foDispoIda.p_auxaptarr.value);

					alert(document.foDispoIda.p_auxtipcab.value);

					alert(document.foDispoIda.p_auxswiv.value);

					alert(document.foDispoIda.xsid.value);*/

					

					document.foDispoIda.submit();				

					document.getElementById('codbloqida').value='';

				}

				if (sentido=='vta'){

					changeVisibility('loadingVta','show');

					document.getElementById("paramfechavta").value=c2.date.print("%d/%m/%Y");

					document.foDispoVta.p_auxaptdep.value=v_aptdep;

					document.foDispoVta.p_auxaptarr.value=v_aptarr;

					document.foDispoVta.p_auxtipcab.value=v_tipcab;

					document.foDispoVta.p_auxswiv.value	 =v_swida;

					document.foDispoVta.xsid.value = document.foLogin.xsid.value;

					

					/*alert(document.getElementById("paramfechaida").value);

					alert(document.foDispoIda.p_auxaptdep.value);

					alert(document.foDispoIda.p_auxaptarr.value);

					alert(document.foDispoIda.p_auxtipcab.value);

					alert(document.foDispoIda.p_auxswiv.value);

					alert(document.foDispoIda.xsid.value);*/

					

					document.foDispoVta.submit();

					document.getElementById('codbloqvta').value='';

				}

			}

		}



		function cambia_tiptra(){ 

			//lanzado en cada click de cambio de tipo de billete (i/v y tur/bus) 

			v_swida  = radio_button_checker('document.foTiptra.rbtn_tiptra');

			resetAtps();

			resetAll();

			if (v_swida == 'RT'){	//oculta o visualiza el calendario en el cambio de tipo de trayecto (y datos dependientes)

				writeObj(cabeceraVtaTxt,'cabeceraVta'); //mostramos el texto de menu derecha relacionado con vuelta

				setClassName('calendarcontainer_rt', 'cont_cal');
				
			}else{						

				writeObj('','cabeceraVta');				//borramos dicho texto (nada depende de el) solo visualizacion

				setClassName('calendarcontainer_rt', 'cont_cal_oneway');
				
			}

		}



		function resetAll(){

			/*borra todo el contenido de la pantalla visualizado por el usuario 

			(en todo momento existen dichos objetos en el arbol DOM de la pagina)

			asi como variables js internas que se mantienen en todo momento		*/

			v_tarificacionRT ='N';//suponemos este valor de antemano

			arr_Precios1=new Array();			arr_Precios2=new Array();

			c1.refresh();						c2.refresh();

			changeVisibility('loadingIda','hide');

			changeVisibility('loadingVta','hide');

			changeVisibility('notatiptar','hide');

			changeVisibility('notatiprt','hide');

			changeVisibility('tarifasabado','hide'); //RAFA: añadida nueva nota en la página principal

			writeObj('','infoPuntos');

			ptos_vta = 0;

			ptos_ida = 0;

			writeObj('','infoCoste');

			writeObj('','infoCosteResi');			

			writeObj('','infoAptIda');			writeObj('','infoDateIda');			writeObj('','infoTimIda');

			writeObj('','infoAptVta');			writeObj('','infoDateVta');			writeObj('','infoTimVta');			

			writeObj('','descripTraIda');		writeObj('','descripTraVta');					

			writeObj('','dispoBox1');			writeObj('','dispoBox2');	

			document.getElementById('codbloqvta').value='';

			document.getElementById('codbloqida').value='';

			document.getElementById('dispoBox1').style.height='0px';

			document.getElementById('dispoBox2').style.height='0px';

			writeObj('','plazasida');			writeObj('','plazasvta');			

			writeObj('','plazasnota');

			l_impbaseida = 0;					l_imptaxida	 = 0;						

			l_impbasevta = 0;					l_imptaxvta	 = 0;

			l_impfee	 = 0;					l_coddiv	 = '';

			l_imptaxtotal=0;					l_imptotal=0;

			//reset de selecciones

			document.foBloqVuelos.p_numpaxadl.value='';

			document.foBloqVuelos.p_numpaxchd.value='';

			document.foBloqVuelos.p_numpaxinf.value='';

			julian_timida ='';

			julian_timvta ='';

			ofe_ida ='';

			ofe_vta ='';

		}



		function resetAtps(){

			/*Resetea las opciones elegidas de aeropuertos*/

			document.getElementById('combo_aptdep').selectedIndex = 0;

			document.getElementById('combo_aptarr').options.length = 0;	

			generaOpcionCombo('Seleccione..',0,'combo_aptarr', 0);

			document.getElementById('combo_aptarr').selectedIndex = 0;

			showInfoPrecioMenu(0);

		}



		function errorDisponibilidad(windowName){			

			if (windowName == 'ifDispoI'){	

				document.getElementById('dispoBox1').style.height='0px'; 

				writeObj('','dispoBox1');		

				changeVisibility('loadingIda','hide');

			}

			if (windowName == 'ifDispoV'){	

				document.getElementById('dispoBox2').style.height='0px';

				writeObj('','dispoBox2');		

				changeVisibility('loadingVta','hide');

			}

			showInfoPrecioMenu(0); //mostramos la publicidad

		}



		function bloquea_reserva(){

		

			if (v_tarificacionRT == 'N') {

				v_errtxt ='';				

				if (valida_seleccion()   == false || valida_horasvuelos() == false) v_errtxt +='Verifique los horarios de salida y llegada de los vuelos seleccionados \n';				

				if (v_errtxt == ''){

					document.foBloqVuelos.p_numpaxadl.value=document.getElementById('comboadl').value;

					document.foBloqVuelos.p_numpaxchd.value=document.getElementById('combochd').value;

					document.foBloqVuelos.p_numpaxinf.value=document.getElementById('comboinf').value;

					document.foBloqVuelos.p_auxaptdep.value=document.getElementById('combo_aptdep').value;

					document.foBloqVuelos.p_auxaptarr.value=document.getElementById('combo_aptarr').value;

					document.foBloqVuelos.p_auxtipcab.value=radio_button_checker('document.foTiptra.rbtn_tipcab');

					document.foBloqVuelos.p_auxswiv.value  =radio_button_checker('document.foTiptra.rbtn_tiptra');

					document.foBloqVuelos.p_auxfecdep.value=c1.date.print("%d/%m/%Y");

					document.foBloqVuelos.p_auxfecarr.value=c2.date.print("%d/%m/%Y");

					document.foBloqVuelos.xsid.value = document.foLogin.xsid.value;

					

					/*alert(document.foBloqVuelos.p_numpaxadl.value);

					alert(document.foBloqVuelos.p_numpaxchd.value);

					alert(document.foBloqVuelos.p_numpaxinf.value);

					alert(document.foBloqVuelos.p_auxaptdep.value);

					alert(document.foBloqVuelos.p_auxaptarr.value);

					alert(document.foBloqVuelos.p_auxtipcab.value);

					alert(document.foBloqVuelos.p_auxswiv.value);

					alert(document.foBloqVuelos.p_auxfecdep.value);

					alert(document.foBloqVuelos.p_auxfecarr.value);

					alert(document.foBloqVuelos.xsid.value);*/

					

					/*	document.foBloqVuelos.p_codtraida.value='0';document.foBloqVuelos.p_codtravta.value='0';*/

					//trayectos solicitados ya insertados					

					if (valida_ofertas()==false){

						if (confirm('Uno de sus vuelos seleccionados no cumple con las condiciones de la oferta.\n ¿Desea continuar sin aplicar la oferta ?')){		

							document.foBloqVuelos.submit();			

						}

					}else{	

						document.foBloqVuelos.submit();			

					}					

				} else { 

					alert(v_errtxt);

				}

			} else {

				document.foDispoRT.p_fecdep.value=c1.date.print("%d/%m/%Y");

				document.foDispoRT.p_fecarr.value=c2.date.print("%d/%m/%Y");

				document.foDispoRT.p_numpaxadl.value=document.getElementById('comboadl').value;

				document.foDispoRT.p_numpaxchd.value=document.getElementById('combochd').value;

				document.foDispoRT.p_numpaxinf.value=document.getElementById('comboinf').value;

				document.foDispoRT.p_auxaptdep.value=document.getElementById('combo_aptdep').value;

				document.foDispoRT.p_auxaptarr.value=document.getElementById('combo_aptarr').value;

				document.foDispoRT.p_auxtipcab.value=radio_button_checker('document.foTiptra.rbtn_tipcab');

				document.foDispoRT.p_auxswiv.value  =radio_button_checker('document.foTiptra.rbtn_tiptra');

				document.foDispoRT.xsid.value = document.foLogin.xsid.value;

				

				/*alert(document.foDispoRT.p_fecdep.value);

				alert(document.foDispoRT.p_fecarr.value);

				alert(document.foDispoRT.p_numpaxadl.value);

				alert(document.foDispoRT.p_numpaxchd.value);

				alert(document.foDispoRT.p_numpaxinf.value);

				alert(document.foDispoRT.p_auxaptdep.value);

				alert(document.foDispoRT.p_auxaptarr.value);

				alert(document.foDispoRT.p_auxtipcab.value);

				alert(document.foDispoRT.p_auxswiv.value);

				alert(document.foDispoRT.xsid.value);*/

				

				document.foDispoRT.submit();								

				document.getElementById('bloqSub').style.display='none';

				writeObj(searchMsgBloq,'bloqLoad');						

			}

		}



		function fallobloqueoOW(){

			//lanzamos las peticiones de disponibilidad otra vez

			enviaPeticionDispo('ida');

			enviaPeticionDispo('vta');

		}



		function cambiaIdioma(valor) {	

			document.foSesionParam.xsid.value=document.foLogin.xsid.value;

			document.foSesionParam.p_codidi.value=valor;

			document.foSesionParam.p_codidi.value=valor;

			document.foSesionParam.submit();

		}



		function init_default(){		

			/*Lanzado al cargar la pagina*/

			cargaOrigenes('combo_aptdep');						//cargamos el combo de ida

			Date.prototype.addDays = function(days) {			// Añadimos un método al objeto JS estándar date

				msecInDay=1000*60*60*24;

				days=days*msecInDay;

				this.setTime(this.getTime()+days);

			}

			d1 = new Date();			// inicializamos las fechas del calendario y la diferencia entre ellas

			d1.addDays(0);

			d2 = new Date();

			d2.addDays(0);

			var datediff = d2.getTime() - d1.getTime();

			set_calendarIda();//creamos calendario de ida

			set_calendarVta();//creamos calendario de vta

			resetAll();		  //borramos contenido

			generaCombosPax();//inicializamos los combos de pasajeros al cargar, para poder continuar la ejecucion en RTs

      init_page();      //carga la combo de los paises

			document.foDatosSesion1.submit();

		}



		function verLogin(){

			generaOverWinSize('Login','Cerrar',document.getElementById('textoLogin').innerHTML,'centinela','480','100',100,200);

		}

		/*function setIdses(valor){

		    parent.document.foLogin.xsid.value = valor;

		}*/



		//----------------VICKY: 26/06/06---------------------------------------

		// verNota(id,nota):

		// nota--> nombre del div.

		// id=0 then -->Oculta.

		// id=1 then -->Muestra.

		//----------------------------------------------------------------------

		function verNota(id,nota){

			if (id==1){

				changeVisibility(nota,'show');				

			}else{

				changeVisibility(nota,'hide');

			}

		}

//	</script>

// Para el combo de idiomas

// Array con la lista de paises, de mercados disponibles

var paises =new Array();

		paises['ES'] = "España";
		paises['PT'] = "Portugal";
		//paises['FR'] = "Francia";
	  //paises['IT'] = "Italia";
		//paises['AR'] = "Argentina";
		//paises['BR'] = "Brasil";
		//paises['OT'] = "Otros";
    //paises['VE'] = "Venezuela";
		//paises['DO'] = "Rep. Dominicana";
		//paises['MX'] = "Méjico";
	

var short_paises=new Array();

		short_paises['ES'] = "ES";
		short_paises['PT'] = "PT";
		//short_paises['FR'] = "FR";
		//short_paises['IT'] = "IT";
		//short_paises['AR'] = "AR";
		//short_paises['BR'] = "BR";
    //short_paises['OT'] = "OT";
		//short_paises['VE'] = "VE";
		//short_paises['DO'] = "DO";
		//short_paises['MX'] = "MX";


// Array con la descripcion de todos los idiomas disponibles

var desc_idiomas =new Array();

		desc_idiomas['IT'] = "Italiano";
		desc_idiomas['FR'] = "Frances";
		desc_idiomas['ES'] = "Español";
		desc_idiomas['CA'] = "Catalán";
		desc_idiomas['PT'] = "Portugues";
		desc_idiomas['EN'] = "Inglés";

var short_desc_idiomas =new Array();

		short_desc_idiomas['Italiano'] = "IT";
		short_desc_idiomas['Frances'] = "FR";
		short_desc_idiomas['Español'] = "ES";
		short_desc_idiomas['Catalán'] = "CA";
		short_desc_idiomas['Portugues'] = "PT";
		short_desc_idiomas['Inglés'] = "EN";

var idiomas =new Array();

		//idiomas['IT'] = [['IT'], ['ES']];
		//idiomas['FR'] = [['FR'], ['ES']];
	    idiomas['ES'] = [['ES'], ['CA'], ['EN'], ['FR'], ['IT']];
	    idiomas['PT'] = [['PT'], ['EN'],['ES']];
		//idiomas['AR'] = [['ES'], ['EN']];
		//idiomas['BR'] = [['BR'], ['ES']];
		//idiomas['OT'] = [['ES'], ['EN']];	// OT = otros
		//idiomas['VE'] = [['ES'], ['EN']];
		//idiomas['DO'] = [['ES'], ['EN']];
		//idiomas['MX'] = [['ES'], ['EN']];
/* fin */

function cargaIdiomas(paisId, idiomaId){
		 var posComboIdioma=0;
		 var aptPai= document.getElementById(paisId).value;
		 var l_idioma = idiomas[aptPai];
		 //var nomIdioma;
		 document.getElementById(idiomaId).options.length=0;
		 //generaOpcionCombo('...',0,comboId,0);
		 generaOpcionCombo('...',0,idiomaId,0);
		 for(listaIdioma in l_idioma){
		 //alert('entra en bucle');
		 var arrIdioma=l_idioma[listaIdioma];
		 posComboIdioma++;
		 nomIdioma=desc_idiomas[arrIdioma[0]];
		 generaOpcionCombo(nomIdioma,short_desc_idiomas[nomIdioma],idiomaId,posComboIdioma);
		 }
		}
		
function generaOpcionCombo(txt,value,idCombo,pos) {
    	oOption = document.createElement("OPTION");
    	oOption.text = txt;
    	oOption.value = value;
    	//asi se puede acceder al browser que sea
    	if (value=='ES'){
    		oOption.selected = "Español";
    	}
    	document.getElementById(idCombo).options[pos] = oOption;
    }
    
function cargaHome(paisId, idiomaId){
	var fechaExp = new Date();			// Estable una fecha desde la cual se va a calcular la fecha final para la caducidad de la cookie

	var aptIdi=document.getElementById(idiomaId).value;
	var aptPai=document.getElementById(paisId).value;
	document.foDatosSesion.p_codidi.value=aptIdi;
    document.foDatosSesion.p_codmer.value=aptPai;
	if(aptPai!='0' && aptIdi!='0'){
		document.foDatosSesion.submit();
	}else{
		alert('Por favor, especifique el país y/o el idioma.');
	}
	/*aptIdi=aptIdi.toLowerCase();
	aptPai=aptPai.toLowerCase();
	if(aptPai=='0' || aptIdi=='0')
	{
		document.location="index.html";
	}else{
		if(aptPai == 'ar' || aptPai == 'br')
		{
			document.location="http://www.aireuropa.com/"+aptPai+"/"+aptIdi+"/default_amadeus.html";
		}else{
			document.location="http://www.aireuropa.com/"+aptIdi+"/default.html";
		}
	}*/
}		

	function init_page() {
	
	    cargaPaises('combo_aptpai');	// Cargamos el combo de paises
    }
    
function cargaPaises(comboId){
			var posCombo = 0;
			var txt = '';
			var value = '';
			//borramos contenido
			document.getElementById(comboId).options.length = 0;			
			//añadimos un elemento centinela ?->	
			generaOpcionCombo('...',0,comboId, 0);				
			for(pai in paises)
			{
				posCombo++;
				txt=paises[pai];
				generaOpcionComboPaises(txt, short_paises[pai], comboId, posCombo);
			}
}
		
// Genera las opciones para el combobox de paises dejando seleccionado por defecto el España
    function generaOpcionComboPaises(txt,value,idCombo,pos) {
    	oOption = document.createElement("OPTION");
    	oOption.text = txt;
    	oOption.value = value;
    	document.getElementById(idCombo).options[pos] = oOption;
    }		
		

