ie4 = (document.all) ? true:false;
ns4=(navigator.appName=='Netscape' && parseInt(navigator.appVersion)==4);
ns6 = (!ie4 && document.getElementById) ? 1 : 0;

function iniciar() {
	show_calendar('reserva0.p_datsal');show_calendar2('reserva0.p_datreg');show_calendar3('frm_embarque.p_datsalembarque');
    obtenerTrayectos();
	mostrarlog(2);
}

function mostrarlog(qui) {
	if (!document.getElementById|document.all) {
			return;
	}else{
		which  = (qui==1)?"logueado":"logueo";
		if (document.getElementById) oWhich = eval ("document.getElementById('" + which + "')");
		else oWhich = eval ("document.all." + which);
	}
	window.focus();
	if (oWhich.style.display=="none") {oWhich.style.display="";} else {oWhich.style.display="none";}
	}

function hemlogeat(elnom) {
	mostrarlog(2);
	mostrarlog(1);
	escriucapa("nomlogeado",elnom);
	}

function escriucapa(nocapa,content) {
	if (ie4) {
		sub = document.all[nocapa];
		sub.innerHTML=content;
		}
	else if (ns6) {
		rng = document.createRange();
		el = document.getElementById(nocapa);
		rng.setStartBefore(el);
		htmlFrag = rng.createContextualFragment(content);
		while (el.hasChildNodes()) el.removeChild(el.lastChild);
		el.appendChild(htmlFrag);
		}
	}

var aeroports = new Array();
/*function hideshowdos(qui) {
	if (!document.getElementById|document.all) {return;}
	else {
		which  = (qui==1)?"dataChildorigen":"dataChilddestino";
		if (document.getElementById) oWhich = eval ("document.getElementById('" + which + "')");
		else oWhich = eval ("document.all." + which);
	}
	window.focus();
	if (oWhich.style.display=="none") oWhich.style.display=""; else oWhich.style.display="none";
}*/
function hideshowdos(qui) {
  var continuar = 1;
  if (!document.getElementById|document.all) {return;}
	else {
	  // Vamos a mostrar u ocultar el calendario de fecha de salida
		if (qui == 1) {
		  which = "dataChildorigen"; 
      // Podemos seleccionar a partir de la fecha de hoy
		  gNow = new Date();
		  // Si ya hay fecha seleccionada, la marcamos
      if (checkDate(document.reserva0.p_datsal.value)) {
        var ar_fecha = document.reserva0.p_datsal.value.split('/');        
        
        f_anio = ar_fecha[2];
        if (ar_fecha[0] < 10) f_dia = ar_fecha[0].substring(1);
        else f_dia = ar_fecha[0];
        if (ar_fecha[1] < 10) f_mes = ar_fecha[1].substring(1)-1;
        else f_mes = ar_fecha[1]-1;
        
        // Dia seleccionado
        gSel = new Date(f_anio,f_mes,f_dia);
        Build('reserva0.p_datsal',f_mes,f_anio,"DD/MM/YYYY");		
      }
      else gSel = new Date(1900,1,1);
		}		

	  // Vamos a mostrar u ocultar el calendario de fecha de regreso
		if (qui == 2) { 
		  which = "dataChilddestino";
      // Podemos seleccionar a partir de la fecha de salida
		  if (!checkDate(document.reserva0.p_datsal.value)) {
        alert('Tiene que especificar una fecha de origen');
        continuar = 0;
      }
      else {
        var ar_fecha = document.reserva0.p_datsal.value.split('/');        
        
        f_anio = ar_fecha[2];
        if (ar_fecha[0] < 10) f_dia = ar_fecha[0].substring(1);
        else f_dia = ar_fecha[0];
        if (ar_fecha[1] < 10) f_mes = ar_fecha[1].substring(1)-1;
        else f_mes = ar_fecha[1]-1;
        
        // Dia de salida
        gNow = new Date(f_anio,f_mes,f_dia);
        
        if (checkDate(document.reserva0.p_datreg.value)) {
          var ar_fecha2 = document.reserva0.p_datreg.value.split('/');        
          
          f_anio2 = ar_fecha2[2];
          if (ar_fecha2[0] < 10) f_dia2 = ar_fecha2[0].substring(1);
          else f_dia2 = ar_fecha2[0];
          if (ar_fecha2[1] < 10) f_mes2 = ar_fecha2[1].substring(1)-1;
          else f_mes2 = ar_fecha2[1]-1;
          
          // Dia de salida
          gSel = new Date(f_anio2,f_mes2,f_dia2);
          Build2('reserva0.p_datreg',f_mes2,f_anio2,"DD/MM/YYYY");
        }
        else {
          gSel = new Date(1900,1,1);
          Build2('reserva0.p_datreg',f_mes,f_anio,"DD/MM/YYYY");
        }
      }
		  
		};
		
		if (qui == 3) { 
		  gNow = new Date();
		  gSel = new Date(1900,1,1);
		  which="dataChildembarque"; 
		}; 

		if (continuar == 1) {
  		if (document.getElementById) oWhich = eval ("document.getElementById('" + which + "')");
  		else oWhich = eval ("document.all." + which);
		}
	}

	if (continuar == 1) {
  	window.focus();
  	if (oWhich.style.display=="none") {
        oWhich.style.display=""; 
  	  if (qui==2) {
  	    document.getElementById("capa_flash_2").style.display="none";
  	    document.getElementById("select26").style.display="none";
  	  }
  	  if (qui==3) {
  	    document.getElementById("capa_flash_2").style.display="none";
  	  }
  	} else {
  	  oWhich.style.display="none";
  	  if (qui==2) {
  	    document.getElementById("capa_flash_2").style.display="";
  	    document.getElementById("select26").style.display="";
  	  }
  	  if (qui==3) {
  	    document.getElementById("capa_flash_2").style.display="";
  	  }
  	}
	}
}

function IsNumeric(sText) {
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
 
   for (i = 0; i < sText.length && IsNumber == true; i++) { 
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1) IsNumber = false;
      }
   return IsNumber;
   }

meses = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
function checkDate(lafecha) {
	var fecha = new String(lafecha);
	cad2=fecha.split('/');
	if (cad2.length==3) catena = 'calendario.htm?fecha='+cad2[0]+'/'+cad2[1]+'/'+cad2[2];
	else return 0;
	if (!IsNumeric(cad2[0])||!IsNumeric(cad2[1])||!IsNumeric(cad2[2])) return 0;
	var myDateStr = cad2[0] + ' ' + meses[cad2[1]-1] + ' ' + cad2[2] +" 12:00:00";
	var myDate = new Date( myDateStr );
	var myDate_string = myDate.toGMTString();
	var myDate_array = myDate_string.split( ' ' );
	if ( myDate_array[2] != meses[cad2[1]-1] ) return 0;
	else return 1;
	} 

function compare(Dat1,Dat2) {
var d1;
var d2;
d1=Dat1.split('/');
d2=Dat2.split('/');
var Date1 = new Date(d1[2],d1[1]-1,d1[0]);//2008,00,31);
var Date2 = new Date(d2[2],d2[1]-1,d2[0]);//2008,00,31);//2008,01,01);
if (Date1 > Date2) return 1; 
else return 0;
}


function updateorigen() {
  //alert("probando0");
  totalae = aeroports.length;
 	Refer1=document.reserva0.p_aptdep;
	for (i=0;i<totalae;i++) {
	   	Refer1.options[i] = new Option(aeroports[i][0],aeroports[i][1]);
	    }	
	Refer1.options.selectedIndex=0;
	}

function updatedestino(pos) {
 	Refer1=document.reserva0.p_aptdep;
 	Refer2=document.reserva0.p_aptarr;
	totalae = aeroports.length;
	totaldest = Refer2.length;
	for (i=1;i<totaldest;i++) {
		var remChld = Refer2.options[1];
		Refer2.removeChild(remChld);
	    }
	aeor = Refer1.selectedIndex;
	totaldest = aeroports[aeor][2].length;
/*	for (i=0,i2=0,lastip="";i<totaldest;i++) {
		newtip = aeroports[aeor][2][i][2];
		if (lastip != newtip && newtip) {
			Refer2.options[i+i2+1] = new Option("-----------------------------------------","0");i2++;
			switch (newtip) {
				case "NAC":Refer2.options[i+i2+1] = new Option("          Nacionales","0");i2++;break;
				case "EUR":Refer2.options[i+i2+1] = new Option("             Europa","0");i2++;break;
				case "AFR":Refer2.options[i+i2+1] = new Option("              Ă?frica","0");i2++;break;
				case "AMN":Refer2.options[i+i2+1] = new Option("    AmĂ©rica del Norte","0");i2++;break;
				case "AMS":Refer2.options[i+i2+1] = new Option("      AmĂ©rica del Sur","0");i2++;break;
				case "CAR":Refer2.options[i+i2+1] = new Option("             Caribe","0");i2++;break;
				case "ASI":Refer2.options[i+i2+1] = new Option("              Asia","0");i2++;break;
				}
			Refer2.options[i+i2+1] = new Option("-----------------------------------------","0");i2++;
			lastip = newtip;
			}
		if (lastip) Refer2.options[i+i2+1] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
    }	*/
	//alert('nacionales');
	var i2=0;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="NAC"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          Nacionales","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			//Refer2.options[c+i2+1] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			numero = parseInt(c+i2+1);
	//		alert("probando5:"+numero+"; O="+aeroports[aeor][2][i][1]+"D="+aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="EUR"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          Europa","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="ASI"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          Asia","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="AFR"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          Africa","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="AMN"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          America del Norte","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="AMS"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          America del Sur","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}
	c--;
	var i2=i2+c;
	var i=1;
	var c=0;
	for (i=0,lastip="";i<totaldest;i++) {
		if (aeroports[aeor][2][i][2]=="CAR"){
			if (c==0){
				Refer2.options[++i2] = new Option("-----------------------------------------","0");i2++;
				Refer2.options[i2] = new Option("          Caribe","0");i2++;
				Refer2.options[i2] = new Option("-----------------------------------------","0");i2++;
			}
			Refer2.options[c+i2] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
			c++;
		}
	}



/*				case "EUR":Refer2.options[i+i2+1] = new Option("             Europa","0");i2++;break;
				case "AFR":Refer2.options[i+i2+1] = new Option("              Ă?frica","0");i2++;break;
				case "AMN":Refer2.options[i+i2+1] = new Option("    AmĂ©rica del Norte","0");i2++;break;
				case "AMS":Refer2.options[i+i2+1] = new Option("      AmĂ©rica del Sur","0");i2++;break;
				case "CAR":Refer2.options[i+i2+1] = new Option("             Caribe","0");i2++;break;
				case "ASI":Refer2.options[i+i2+1] = new Option("              Asia","0");i2++;break;
				}
			
			lastip = newtip;
			}
		if (lastip) Refer2.options[i+i2+1] = new Option(aeroports[aeor][2][i][1],aeroports[aeor][2][i][0]);
    }*/

	if (pos!=null)
		Refer2.options.selectedIndex=pos;
	else
		Refer2.options.selectedIndex=0;
	}

function guardaraeor() {
 	Refer3=document.aeroporthabitual.aehabitual;
	if (aeroports[Refer3.options.selectedIndex][1]!="") {
		var expDays = 100; // DĂ­as
		var exp = new Date();
		exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
		squel ('AEHABITUAL',aeroports[Refer3.options.selectedIndex][1],exp);
		}
	}

function validareserva() {
	var error="";
 	Refer1=document.reserva0.p_aptdep;
 	Refer2=document.reserva0.p_aptarr;
	aeor = Refer1.options[Refer1.selectedIndex].value;
	aede = Refer2.options[Refer2.selectedIndex].value;
	nadults = eval(document.reserva0.p_numpaxadl.value);
	nnins12 = eval(document.reserva0.p_numpaxchl.value);
	nnins2 = eval(document.reserva0.p_numpaxinf.value);
	if (aeor=="") error += "No has elegido el aeropuerto de origen.\n";
	if (aede=="0") error += "No has elegido el aeropuerto de destino.\n";
	if (!checkDate(document.reserva0.p_datsal.value)) {
		if (document.reserva0.p_datsal.value=="dd/mm/aaaa") error += "No has introducido la fecha de salida.\n";
		else error += "La fecha de salida no es vĂˇlida.\n";
		}
	else {
		var eldataavui =  new Date();
		var eldiaavui = eldataavui.getDate()+'/'+eval(eldataavui.getMonth()+1)+'/'+eval(eldataavui.getYear()+1900*ns6);
		if (compare(eldiaavui,document.reserva0.p_datsal.value)) error += "La fecha de salida tiene que ser posterior al dia de hoy.\n";
		}
	if (!checkDate(document.reserva0.p_datreg.value)) {
		if (document.reserva0.p_datreg.value!="dd/mm/aaaa" && document.reserva0.p_datreg.value.length!=0) error += "La fecha de regreso no es vĂ lida.\n";
		}
	else {
		if (compare(document.reserva0.p_datsal.value,document.reserva0.p_datreg.value)) error += "La fecha de regreso tiene que ser posterior.\n";
		}
	if (nadults < nnins2 ) error += "Por cada niĂ±o debe haber un adulto al cargo.\n";
	if ((nadults + nnins12) > 9 ) error += "SĂłlo se permite reservar 9 plazas, los bebes no ocupan plaza.\n";
	if (error!="") {alert(error);return (false);}
	//asignar_valor_ses();
	return(true);
	}

function datos_sesion() {
//  alert('foDatoSesion.submit');
  document.foDatoSesion.submit();
}
/*
function asignar_valor_ses() {
  alert('entramos a asignar_valor_ses');
  //document.foDatoSesion.submit();
  alert('vemos valor');
  //alert(document.foDatoSesion.sesb2c.value);
  //document.reserva0.xpag.value = document.foDatoSesion.sesb2c.value;
  alert(document.reserva0.p_xpag.value);
}*/

function valida_trj_emb() {
	var error="";

	if (document.frm_embarque.p_aptsal.value == "0") error += "No has elegido el aeropuerto de origen.\n";
	if (document.frm_embarque.p_locata.value == "") error += "No has introducido el localizador.\n";

	if (!checkDate(document.frm_embarque.p_datsal.value)) {
		if (document.frm_embarque.p_datsal.value=="dd/mm/aaaa") error += "No has introducido la fecha de salida.\n";
		else error += "La fecha de salida no es vĂˇlida.\n";
		}
	else {
		var eldataavui =  new Date();
		var eldiaavui = eldataavui.getDate()+'/'+eval(eldataavui.getMonth()+1)+'/'+eval(eldataavui.getYear()+1900*ns6);
		if (compare(eldiaavui,document.frm_embarque.p_datsal.value)) error += "La fecha de salida tiene que ser posterior al dia de hoy.\n";
		}
	if (error!="") {alert(error);return (false);}
	return(true);
	}

function obtenerTrayectos(){
	document.foInfoSesion.submit();
}
