/*---------------------------------Funciones del Diccionario ---------------------------------------*/
var gblIDIOMA='ING';

fGbl = function(){ 	
	return{		
		llenaGlbs:function(params){			
			gblIDIOMA = params.Idioma; 			
		},
		replaceCharsDecHex:function(cad,param1,param2,param3,param4){
			var charDe=''; var charHx='';
			for (var x=192; x<255; x++) {									
				charHx = String.fromCharCode(92) + 'u00' + Number(x).toString(16).toUpperCase();				
				charDe = String.fromCharCode(x);
				var patt=new RegExp(charDe,"g");
				cad = cad.replace(patt,charHx); //Reemplaza todas las ocurrencias				
			}
			return String(cad);
		},
		regresaHex:function(val){
			var _val='';
			if (typeof val=='string') {
				_val = (parseInt(val)!=NaN)? parseInt(val):val.charCodeAt(0); 
			}else if (typeof val=='number') {
				_val = val; //String.fromCharCode(val);
			}
			_val = Number(_val).toString(16).toUpperCase();
			return _val;
		}	
	}; //fin <return>
}(); //fin <glbVar>

var fdic=function(){
var dicc = {ESP:0, ING:1, POR:2};
var pos=dicc.ING; var resultado='';
	return{		
			trad:function(clave,idioma){
				if (idioma==null) { idioma = this.lang(idioma); }
				resultado = ''; pos = eval("dicc." + idioma.toUpperCase());
				//Si me lo pasan como cadena 
				clave = (typeof clave=='string')? eval(clave) : clave;				
				if (typeof clave!='undefined') {								
					resultado = (typeof clave[pos]!='undefined') ? clave[pos]:'';
				}				
				return resultado;			
			},
			lang:function(_lang){
				if (typeof _lang=='undefined' || _lang==null || _lang== '') {
					if (typeof gblIDIOMA!='undefined') {
						_lang = gblIDIOMA;
					}else {
						_lang = document.getElementById('Idioma');
						_lang = (typeof _lang!='undefined' && _lang!=null) ? _lang.value :'';
					}					
					_lang = (_lang!='') ? _lang : 'ING';						
				}
				return _lang.toUpperCase();
			}			
	}; //fin <return>
}(); //fin <fdic>


/*------------------------------------------ Muestra Informacion de Tours---------------------------------------------------*/	
	
	function ExistsObj(obj) { 
	if (typeof obj=='string' && obj=='undefined') {
		return false;
	} else if (typeof obj!='undefined' && obj!=null) { 
		return true; 
	} else { return false; } 
}

function openInfoTour(src,objs,remplaza,_width,_height) {

    var ie = document.all ? true : false; 
	if (ExistsObj(remplaza)==true) {		
		if (objs!=''){		
			//Tipo de delimitador de datos 
			var delimitadorObj	  = (objs.indexOf(",") > -1) ?  "," : "|";
			var delimitadorValues = (remplaza.indexOf(",") > -1) ?  "," : "|";	 	
			objs = objs.split(delimitadorObj);  //Separo los Objetos con el delimitador
			remplaza = remplaza.split(delimitadorValues);  //Separo los valores con el delimitador	 	
			for(var i=0;i<objs.length;i++) { 	
				var _obj = objs[i];  //Nombre del Primer Objeto encontrado
				if (_obj.indexOf('document.')>-1) {
					_obj = eval(_obj); //Obtengo el Objeto
					if (ExistsObj(_obj)==true)
						if (ExistsObj(remplaza[i])==true) {						
							src = src.replace(remplaza[i],_obj.value) //Busca en el src  y remplaza por el valor					
						}
				}						
			}	
		}
	}	
	_width = (ExistsObj(_width) == true && _width > 0)? _width : 550; //Tomo el Ancho de la Ventana
	_height = (ExistsObj(_height) == true && _height > 0)? _height : 600;  //Tomo el Alto de la Ventana
	popupWin = window.open(src,'Tour', 'top=25,left=25,width=' + _width +  ',height=' + _height + ',buttons=no,scrollbars=yes,location=no,menubar=no,resizable=no,status=no,directories=no,toolbar=no')
	
}


// openWindow function for billing and cancelation policies
function openTerms(src, width, height) {
var _width = (typeof width == 'undefined') ? 465 : width;
var _height = (typeof width == 'undefined') ? 300 : height;
// var ie = document.all ? true : false; if(ie==true) { busyBox.Hide(); }
popupWin = window.open(src, 'Terms', 'top=25,left=25,width=' + _width + ',height=' + _height + ',buttons=no,scrollbars=yes,location=no,menubar=no,resizable=no,status=no,directories=no,toolbar=no')
} 


/*---------------------------------------Limpia el Textbox de LeavingFrom------------------------------------------------*/
	var descripcionGral = '';
	function ClearField(Obj,descripcion) 
	{    
		descripcionGral = descripcion;
		 var descObj = Obj.value;       
		
		 if (descObj == descripcion) 
		 {     
			Obj.value="";    
		 }
		 else {
			Obj.focus();
			Obj.select();
		 }
	}
	
	
function SubmitForm(forma,onsubmit,url,param1) {
	var error = false; //No Hubo error
	//Ya tiene onsubmit el formulario? True  False
	var existe = (typeof(forma.onsubmit) != "undefined" && forma.onsubmit != null ) ? true :  false;
	//si quieren cambiar el onsubmit o Agregar !!!
	if (onsubmit!="") { 
	   forma.onsubmit = onsubmit; existe= true;  //cambio 	
	}
	//Tiene ruta? Cambia la accion
	if(url!=""){ forma.action = url;}
	//Si tiene onsubmit el formulario ?
	if(existe==true)  { 
		//Ejecuto onsubmit:  False: Todo bien; True: Hubo Error	 
		if (forma.onsubmit()==true) {error = false;} else {error = true;}
	} 			
	if (error == false)  //Si no hay error hago el submit del form..
	  forma.submit();

}	

// Mandar cookies de un dominio a otro para Google Analytics
// [tipo] = L (Link) o F (Formulario)
// Si es "L" [valor] = Ruta ---- Si es "F" [valor] = EL formulario (this)
function pageTrackerGoogle(tipo, valor) {
if (tipo == null || typeof tipo == 'undefined') { tipo = 'F' }
if (tipo.toUpperCase() == "L") {
if (typeof _gaq != 'undefined') _gaq.push(['_link', valor]);
return false;
} else {
if (typeof _gaq != 'undefined') _gaq.push(['_linkByPost', valor]);
return true;
}
}

//funcion que se utiliza para la Matriz de Aerolines y Vuelos
var posReal;
function showMoreflights(max,id,idName) {
var pos;
//Nota: + (Posicionarme a uno Mas)
// - (Posicionarme a uno menos)
// 1,2,3,4,5,6,etc.. (Es Numerico forzo elemento a mostrar)
if (parseInt(id) > 0 ) {
pos = parseInt(id);
}else {
pos = document.getElementById('pos').value; //posicion actual (por defaul es 1 al inicio)
if (id == "+") {
pos++;
if (pos > max )
pos = 1; //Si es el Mayor del ultimo grupo lo Regreso al Primero
} else if (id == "-") {
pos--;
if (pos < 1)
pos = max; //Si es el primer elemento lo regreso al ultimo grupo
} else {
pos =1;
}
}
document.getElementById('pos').value = pos; //Reasigno su ultima posicion del elemento
//Muestro o Oculto los Grupos
for (var i = 1; i <= max; i++) {
if (i == pos) //Si es la igual la posicion Muestro
DisplayObj(idName + i,1); //Muestra el div
else
DisplayObj(idName + i,0); //Oculta el div
}
}


// id: id del objeto; s: 1 para desplegar y 0 para ocultar
function DisplayObj(id,s) {
var e = f$(id); if(e != null) if(s){eval("e.style.display = ''");}else{eval("e.style.display = 'none'");}
}


//Regresa Objeto(s)
function f$() {
var _IdArray=new Array();
for(var i=0;i<arguments.length;i++) {
var _Id=arguments[i];
if(typeof _Id == "string") {
_Id = document.getElementById(_Id); //objeto por Id
}
if(arguments.length==1) {
return _Id;
}
_IdArray.push(_Id);
}
return _IdArray;
} 
