disAlertRates_ESP = "Debe introducir las edades de los ninos";
disAlertRates_ING = "You must write the childrens ages";
disAlertAdultos_ING = "Sorry, We cannot accept rooms with no adults.";
disAlertAdultos_ESP = "No podemos aceptar habitaciones sin adultos.";

// Agragado VHDM - 01/Ago/07
totalcuartos = 2;

maxNumNinios = 4; 
sinAdultos = false;

//Funcion para Mostrar los Cuartos de Paquetes de Avion
function Travel_ShowRoom(forma)
{
// Agragado VHDM - 01/Ago/07
  var TotalCuartos = totalcuartos;	//Total de cuartos
  var numcuartos = eval("document." + forma + ".num_cuartos.value");	//numero de cuartos
	eval("document.getElementById('DivTablaNinos').style.display='none'");	//Oculto la Tabla de Rooms-ninos
	eval("document.getElementById('DivTablaNinos_1').style.display='none'"); //Oculto la Tabla de Room1-ninos
	// Modificado VHDM - 01/Ago/07 - Carga dinamica de Total de cuartos
	//for(s=2; s<= 5;s++) 
	for(s=2; s<= TotalCuartos;s++) 
	{
		eval("document.getElementById('DivTablaNinos_" + s + "').style.display='none'"); //Oculto la Tabla de Rooms-ninos
	 	eval("document.getElementById('DivHab_" + s + "').style.display='none'");  //Combo de Adultos	 
	 	//eval("document.getElementById('Divnum_ninos_" + s + "').style.display='none'");	//Combo de Ninos 
	}
	for (s=2; s<= numcuartos; s++)
	{		
		eval("document.getElementById('DivHab_" + s + "').style.display=''");  //Combo de Adultos		
		//eval("document.getElementById('Divnum_ninos_" + s + "').style.display=''");	//Combo de Ninos	 		
	}	
	Travel_CleanChild(forma,0); //Limpia los combos de ninos y oculta tablas de Rooms-ninos
}

//Muestro los Cobos de los Niņos
function Travel_CleanChild(forma,k)
{	
// Agragado VHDM - 01/Ago/07
  var TotalCuartos = totalcuartos;	//total de cuartos
   //debugger;
	if(k==0)
	{
		eval("document." + forma + ".num_ninos.value=0"); //Limpio combo de Ninos Room1
		eval("document.getElementById('DivTablaNinos_1').style.display='none'");	//Muestro la Tabla Contenedora
		Travel_LimpiaNinos(forma,1);
	    // Modificado VHDM - 01/Ago/07 - Carga dinamica de Total de cuartos
	    //for(s=2; s<= 5;s++) 
	    for(s=2; s<= TotalCuartos;s++) 
		{ 
			Travel_LimpiaNinos(forma,s);
			eval("document." + forma + ".num_adultos_" + s + ".value=0"); //Limpio combo de Ninos
			eval("document." + forma + ".num_ninos_" + s + ".value=0"); //Limpio combo de Ninos
			eval("document.getElementById('DivTablaNinos_" + s + "').style.display='none'"); //Oculto la Tabla de Rooms-ninos
		}
	}
	else
	{
		Travel_LimpiaNinos(forma,k);
		eval("document.getElementById('DivTablaNinos').style.display=''");	//Oculto la Tabla de Rooms-ninos
		eval("document.getElementById('DivTablaNinos_" + k + "').style.display='none'");	//Muestro la Tabla Contenedora
	}
}

//Muestro los Cobos de los Niņos
function Travel_LimpiaNinos(forma,k)
{	//debugger;
        if (k==1)
	       { b=''; }
	    else
	       { b='_'+ k; }
	    
	    //Limpio a todos los objetos edades
		for (var a=1; a <= maxNumNinios; a++)
		  {
			  //alert(a);
		   eval("document." + forma + ".EdadNino" + a + b +".value=-1");  
		  }	
}

//Muestro los DIV de Edades de los Niņos
function Travel_ShowNinos(forma,k)
{
// Agragado VHDM - 01/Ago/07
  var TotalCuartos = totalcuartos;	//Total de cuartos	//total de cuartos
//debugger;
	if (k==1)
	{ b=''; }
	else
	{ b='_'+ k; }
	eval("document.getElementById('DivTablaNinos_" + k + "').style.display='none'");	//Muestro la Tabla Contenedora
	var prende = 0;
	if(eval("document." + forma + ".num_ninos.value")>0) // reviso que el combo de ninos Room1 sea mayor que 0
			prende = 1;
			
    // Modificado VHDM - 01/Ago/07 - Carga dinamica de Total de cuartos
    //for (var s = 2; s<=5; s++) // reviso que el combo de ninos Rooms (2,3,4,5) sea mayor que 0
    for(s=2; s<= TotalCuartos;s++)  // reviso que el combo de ninos Rooms (2,3,4,5) sea mayor que 0
	{
		if(eval("document." + forma + ".num_ninos_" + s +".value")>0)
			prende = 1;
	}
	if (prende == 0)
		eval ("document.getElementById('DivTablaNinos').style.display='none'");//Oculta todo el div general de Rooms edades
	
	// Oculto o muestro los combos de edades y el div contenedor
	if(eval("document." + forma + ".num_ninos" + b +".value") == 0)
	{
		Travel_LimpiaNinos(forma,k); //Limpio Combos
		eval("document.getElementById('DivTablaNinos_" + k + "').style.display='none'");	//Oculto la Tabla de edades ninos
	}
	else
	{
		eval ("document.getElementById('DivTablaNinos').style.display=''"); //Muestro Tabla general de edades
		eval("document.getElementById('DivTablaNinos_" + k + "').style.display=''");	//Muestro la Tabla Contenedora
		for (var ninios = 1; ninios <= maxNumNinios; ninios++)
	    {		
			// Oculto o muestro todos los combos de edades del Room seleccionado
			if(ninios <= eval("document." + forma + ".num_ninos" + b +".value"))
			{
				eval ("document." + forma + ".EdadNino" + ninios + "" + b +".style.display=''"); 
			}
			else
			{
				eval ("document." + forma + ".EdadNino" + ninios + "" + b +".style.display='none'"); 
			}
	    }
	}
} 

//MUESTRA TABLA  ADULTOS Y NIŅOS  SEGUN LOS DATOS QUE TENGA EN ESE MOMENTO
function Show_RoomPackageInicioHome(forma)
{
    // Agragado VHDM - 01/Ago/07
    var TotalCuartos = totalcuartos;	//Total de cuartos
	eval("document." + forma + ".num_cuartos.value=1"); //Inicio combo de cuartos en 1
	eval("document.getElementById('DivTablaNinos_1').style.display='none'");	//Oculto la Tabla de Room1-ninos
    //Oculto todos los elementos por default
    // Modificado VHDM 01Ago07 - Carga dinamica del total de cuartos
    //for(s=2; s<=5;s++)
	for(s=2; s<=TotalCuartos;s++)
	{
	   //eval("document.getElementById('DivTabla_" + s + "').style.display='none'");	//Oculto la Tabla adultos-ninos
	   eval("document.getElementById('DivTablaNinos_" + s + "').style.display='none'");	//Oculto la Tabla de Rooms-ninos
	   eval("document.getElementById('DivHab_" + s + "').style.display='none'");  //Oculto Combo de Adultos		
	   //eval("document.getElementById('Divnum_ninos_" + s + "').style.display='none'");	//Oculto Combo de Ninos	 		
	}
	Travel_CleanChild(forma,0); //Limpia los combos de ninos y oculta tablas de Rooms-ninos
}

//****************************************************************************************************
//						HOTEL, TOURS, TRASLADOS LISTA ( ASOCIADOS )
//****************************************************************************************************

//Arma el link que muestra la lista de HOTELES
function newwindow_asoc(target,url) 
{   
	// debugger;
    //Abro la Ventana 
    if (url != "")
    {
		var popupWin = window.open(url,target, 'top=25,left=25,width=710,height=600,buttons=no,scrollbars=yes,location=no,menubar=no,resizable=no,status=no,directories=no,toolbar=no');
    }else
    {
		var popupWin = window.open("",target, 'top=25,left=25,width=710,height=600,buttons=no,scrollbars=yes,location=no,menubar=no,resizable=no,status=no,directories=no,toolbar=no');
    }    
   	popupWin.focus(); 
 }

//Cambia la clase del menu de servicios .travel
function Selecciona_Opcion(opcion)
{
  //debugger;
	//Elementos "li" del div MenuBuscador
	Elementos = document.getElementById('MenuBuscador').getElementsByTagName("li");
	for (var i=1; i <= Elementos.length; i++)
	{
		if (i==opcion)
		{
			eval("document.getElementById('MenuBuscador" + i + "').className='current'");
			//paso la posicion del elemento actualmente seleccionado
			//document.getElementById('Opcion').value = i;
		}else
		{
			eval("document.getElementById('MenuBuscador" + i + "').className='RbImg'");
			eval("changeUnActive(document.getElementById('MenuBuscador" + i + "'));");
		}
	}
}

// Intercambia Imagenes con estandar -g- -n-
function changeActive (ctrl)
{
    if (ctrl.src.indexOf('-g-') >= 0)
        ctrl.src = ctrl.src.replace(/-g-/,"-n-");
}
function changeUnActive (ctrl)
{
    if (ctrl.className != 'current')
    {
        if (ctrl.src.indexOf('-n-') >= 0)
            ctrl.src = ctrl.src.replace(/-n-/,"-g-");
        }
}

//Funcion que Muestra y Oculta el buscador de Hotel, tour, paquetes, etc.. Punto TRAVEL
function Menu_Buscador(idelement,totelement)
{
  //debugger;
  for (var i=1; i<=totelement; i++)
  {
    if (idelement==i)
     {
		eval("document.getElementById('Caja" + idelement + "').style.display=''");  //muestra el elemento seleccionado
     }else
     {
       eval("document.getElementById('Caja" + i + "').style.display='none'");  //Oculta los demas elementos del Menu
     }     
  }
}


//**************************************************************************************************************
//********************					PAQUETES  .TRAVEL								************************
//**************************************************************************************************************

//Funcion que Valida el Submit del Formulario de Avion mas Hotel ( Nivel Paquetes )
// 1.- Que se especifique un Aeropuerto
// 2.- Que se especifique la Ciudad
// 3.- Que No haya cruce de Fechas
// 4.- Que se Indique las Edades
// 5.- Que el  Total de Pasajeros Niņos y Adultos sea N Total que se le envie
//Nota :  anio_desde, etc..  es el valor del objeto y forma = nombre del formulario..

function validaPackAvion(forma,maxTotal,anio_desde,mes_desde,dia_desde,anio_hasta,mes_hasta,dia_hasta)
{  	
  // Valida 1.-
  if (validaAereopuerto(forma) == false)
   {  return false;
   }
  // Valida 2.-  
  if (validaCiudad(forma) == false)
   {  return false;
   } 
  //Valida 3.-
  if (validaFechas(anio_desde,mes_desde,dia_desde,anio_hasta,mes_hasta,dia_hasta) == false)
   {  return false;
   }
  //Valida 4.-
  if (validateEdades(forma) == false)
   {  return false;
   } 
  //Valida 5.- 
  if (validaTotalAdNi(forma,maxTotal) == false)
   {  return false;
   }
  return true;  //Todo bien
}

//Valida que se seleccione el Aereopuerto de Salida del Cliente
alertAereopIng = "Please select the departure airport.";
alertAereopEsp = "Por favor seleccione el aeropuerto origen.";

function validaAereopuerto(forma)
{  
	//debugger; 
    var idioma = document.getElementById('Idioma').value;  //Obtengo el Idioma
    //var idioma = eval("document." + forma + ".idioma.value");  //Obtengo el Idioma 
    var mensaje; 
    var z = eval("document." + forma + ".Leavingfrom.value");
    
    if (idioma.toLowerCase() == "ing")
    {
      mensaje =  alertAereopIng; 
    }else
    {
        mensaje =  alertAereopEsp; 
    }
    //Que tenga Clave de Aereopuerto y Codigo de Aerop
    if (eval("document." + forma + ".Leavingfrom.value") == "" | eval("document." + forma + ".CodeAirport.value") == "")
    {
     alert(mensaje);
     return false;
    }    
    return true;
}

//Funcion que Valida que se haya especificado una ciudad
alertCiudadIng = "Please select the arrival airport.";
alertCiudadEsp = "Por favor seleccione el aeropuerto de llegada.";
function validaCiudad(forma)
{     
    var idioma = document.getElementById('Idioma').value;  //Obtengo el Idioma
    
    var mensaje; 
    if (idioma.toLowerCase() == "ing")
    {
      mensaje =  alertCiudadIng;   //Mensaje de Ingles de Especificar la ciudad
    }else
    {
      mensaje = alertCiudadEsp; //Mensaje de Espaņol de Especificar la ciudad  
    }
    //Que tenga Ciudad y clave de Ciudad
    if (eval("document." + forma + ".ciudades.value") == "" | eval("document." + forma + ".Clav_ciudad.value") == "")    
    {
     alert(mensaje);
     return false;
    }    
    return true;
}

//Recorre a los Elementos Niņos que tengan un valor valido
function validateEdades(forma)
{
    var msg="";
    var msgAd="";
    var idioma = document.getElementById('Idioma').value;  //Idioma
    var rooms;
    var adultos;
    var ninios;
        
    //Muestro el mensaje en el Idioma
    if (idioma.toLowerCase() == "esp")
    {
        msg = disAlertRates_ESP;
        msgAd = disAlertAdultos_ESP;
    }
    else
    {
        msg = disAlertRates_ING;
        msgAd = disAlertAdultos_ING;
    }

    if (eval("document." + forma + ".Adult_Only.value") == "no")
    {
    
        rooms = eval("document." + forma + ".num_cuartos.value");
        //Recorro todos los cuartos 
        for(var i=1; i<=rooms;i++) 
	    {	        
	        if (i==1)
			    { b=''; }
			else			 
				{ b='_'+ i; }
				
			adultos = eval("document." + forma + ".num_adultos" + b + ".value");  //Numero de adultos
			
			//Que haya un adulto para cada cuartos
			if (adultos <= 0)
			{   alert(msgAd);  //Especificar adultos
			    return false;
			}
			ninios 	= eval("document." + forma + ".num_ninos" + b +".value");
			
	        //eval("document.formahotel.num_adultos" + b +".value=0");
	        for (var y=1; y<=ninios;y++)
	        {   //Si el valor que tiene el combo de niņos = ?  regreso error                   
			    if (eval("document." + forma + ".EdadNino" + y  + b +".value") == "-1" )  //valor = ? Clave = -1
			    {
			        alert(msg);  //Especificar edad de los Niņos
			        return false;  //Regreso error
			    }     
	        }
	    }
    }
  return true;
}

function GtCtrl(ctrl)
{
    return document.getElementById(ctrl);
}

//Agrega secuencia numerica a combobox
function FillCBNumeric(ctrl, start, finish)
{
    for(var x = start; x <= finish; x++) {
        var option = document.createElement('option');
        option.appendChild(document.createTextNode(x));
        option.setAttribute('value', finish);
        ctrl.appendChild(option);
    }
}

//Verifica que el Total de Pasajeros para el Paquete sea a N valor especificado 
function validaTotalAdNi(forma,maxTotal)
{
  var b;  
  var rooms;
  var adultos = 0;
  var ninios = 0;  
  var pTotal = 0;
  var pGranTotal = 0;
  
  disTotRebasa_ING = "Please specify at least 1 but no more than "  + maxTotal +  " travelers.";
  disTotRebasa_ESP = "Por favor especifique al menos 1 y hasta "  + maxTotal +  " pasajeros.";
  
  var idioma = document.getElementById('Idioma').value;  //Idioma
  rooms = eval("document." +  forma  + ".num_cuartos.value"); //Total de Cuartos
  
  //Recorro todos los cuartos 
  for(var i=1; i<=rooms;i++) 
    {
     //en mascaro a los Objetos de Adultos y Niņos
     if (i==1)
	   { b=''; }
	 else			 
	   { b='_'+ i; }
	   
	 adultos = eval("document." + forma + ".num_adultos" + b +".value");  //Numero de adultos
	 //Si no trae valor los adultos le pongo cero para que no truene
	 if (adultos =="")
	  { 
	    adultos = 0;
	  }	   
     //Si se permiten Niņos: entonces sumo Niņos
     if (eval("document." + forma + ".Adult_Only.value") == "no")
       { ninios = eval("document." + forma + ".num_ninos" + b +".value");   //Numero de Niņos             
         //Si no trae valor los niņos le pongo cero para que no truene
         if (ninios =="")
	       { 
	         ninios = 0;
	       }              
	       
       } 
       
     pTotal = parseInt(adultos) +  parseInt(ninios);  //Suma Adultos y Niņos
     pGranTotal += pTotal;
     //Si Revasa al total permitido para el avion  mando error  
     if (pGranTotal > maxTotal)
       {
         //Si es Espaņol ....  Mando alerta en el Idioma
         if (idioma.toLowerCase() == "esp")
         {
           alert(disTotRebasa_ESP);
         }else
         {
            alert(disTotRebasa_ING);
         }
         
         return false;                 
       }
    }
      
  return true;
}

CiudadesId = new Array
('PVR',
'ZLO',
'MEX',
'SLW',
'TRC',
'ACA',
'AGU',
'BJX',
'BJX',
'CJS',
'CLQ',
'CME',
'CPE',
'CUL',
'CUN',
'CUN',
'CUN',
'CUN',
'CUN',
'CUN',
'CUN',
'CUN',
'CUN',
'CUU',
'CVJ',
'CVM',
'CZM',
'DGO',
'GDL',
'GDL',
'GDL',
'HMO',
'HUX',
'JAL',
'LMM',
'LTO',
'MAM',
'MEX',
'MID',
'MLM',
'MTY',
'MXL',
'MZT',
'NLD',
'OAX',
'PAZ',
'PBC',
'PBC',
'PDS',
'PVR',
'PVR',
'PXM',
'QRO',
'REX',
'SJD',
'SJD',
'SJD',
'SJD',
'SLP',
'TAM',
'TAM',
'TAP',
'TGZ',
'TIJ',
'TLC',
'VER',
'VER',
'VSA',
'ZCL',
'ZIH',
'LAP');

CiudadesNombre= new Array
('Puerto Vallarta (PVR)',
'Manzanillo (ZLO)',
'Mexico City (MEX)',
'Saltillo (SLW)',
'Torreon (TRC)',
'Acapulco (ACA)',
'Aguascalientes (AGU)',
'Guanajuato (BJX)',
'Leon (BJX)',
'Ciudad Juarez (CJS)',
'Colima (CLQ)',
'Ciudad del Carmen (CME)',
'Campeche (CPE)',
'Culiacan (CUL)',
'Akumal (CUN)',
'Cancun (CUN)',
'Isla Mujeres (CUN)',
'Mayan Riviera (CUN)',
'Playa del Carmen (CUN)',
'Puerto Aventuras (CUN)',
'Puerto Morelos (CUN)',
'Tulum (CUN)',
'Xcaret (CUN)',
'Chihuahua (CUU)',
'Cuernavaca (CVJ)',
'Ciudad Victoria (CVM)',
'Cozumel (CZM)',
'Durango (DGO)',
'Guadalajara (GDL)',
'Tlaquepaque (GDL)',
'Zapopan (GDL)',
'Hermosillo (HMO)',
'Huatulco (HUX)',
'Jalapa/Xalapa (JAL)',
'Los Mochis (LMM)',
'Loreto (LTO)',
'Matamoros (MAM)',
'DF (MEX)',
'Merida (MID)',
'Morelia (MLM)',
'Monterrey (MTY)',
'Mexicali (MXL)',
'Mazatlan (MZT)',
'Nuevo Laredo (NLD)',
'Oaxaca (OAX)',
'Poza Rica (PAZ)',
'Cholula (PBC)',
'Puebla (PBC)',
'Piedras Negras (PDS)',
'Barra de Navidad (PVR)',
'Costa Alegre (PVR)',
'Puerto Escondido (PXM)',
'Queretaro (QRO)',
'Reynosa (REX)',
'Cabo San Lucas (SJD)',
'Los Cabos (SJD)',
'San Jose del Cabo (SJD)',
'Touristic Corridor (SJD)',
'San Luis Potosi (SLP)',
'Ciudad Madero (TAM)',
'Tampico (TAM)',
'Tapachula (TAP)',
'Tuxtla Gutierrez (TGZ)',
'Tijuana (TIJ)',
'Toluca (TLC)',
'Boca del Rio (VER)',
'Veracruz (VER)',
'Villahermosa (VSA)',
'Zacatecas (ZCL)',
'Ixtapa/Zihuatanejo (ZIH)',
'La Paz (LAP)');




DestinosId = new Array
(
"1",
"49",
"46",
"2",
"66",
"3",
"48",
"45",
"53",
"58",
"55",
"36",
"4",
"57",
"61",
"15",
"47",
"14",
"5",
"6",
"7",
"35",
"54",
"8",
"30",
"9",
"10",
"70",
"11",
"32",
"25",
"51",
"17",
"68",
"16",
"39",
"52",
"12",
"40",
"13",
"59",
"69",
"64",
"65",
"56",
"43",
"41",
"50",
"67",
"44");

DestinosNombre = new Array(
"Acapulco",
"Aguascalientes",
"Campeche",
"Cancun",
"Chetumal",
"Chiapas",
"Chihuahua",
"Ciudad del Carmen",
"Ciudad Juarez",
"Coahuila",
"Copper Canyon",
"Costa Alegre",
"Cozumel",
"Cuernavaca",
"Durango",
"Guadalajara",
"Guanajuato",
"Holbox",
"Huatulco",
"Isla Mujeres",
"Ixtapa & Zihuatanejo",
"La Paz",
"Leon",
"Los Cabos",
"Manzanillo",
"Mazatlan",
"Merida & Yucatan",
"Mexicali",
"Mexico City",
"Monterrey",
"More Destinations",
"Morelia & Michoacan",
"Oaxaca",
"Pachuca",
"Playa del Carmen",
"Puebla",
"Puerto Escondido",
"Puerto Vallarta",
"Queretaro",
"Riviera Maya",
"San Luis Potosi",
"San Miguel de Allende",
"Sinaloa",
"Sonora",
"Tamaulipas",
"Tampico",
"Taxco",
"Tijuana and Rosarito",
"Tlaxcala",
"Toluca");

function FillHotelDestinations(ctrl)
{
    for(var x = 0; x < DestinosNombre.length; x++) {
        var option = document.createElement('option');
        option.appendChild(document.createTextNode(DestinosNombre[x]));
        option.setAttribute('value', DestinosId[x]);
        ctrl.appendChild(option);
    }
}

function FillPackageCities(ctrl)
{
    for(var x = 0; x < CiudadesNombre.length; x++) {
        var option = document.createElement('option');
        option.appendChild(document.createTextNode(CiudadesNombre[x]));
        option.setAttribute('value', CiudadesId[x]);
        ctrl.appendChild(option);
    }
}
