// JavaScript Document
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function getElementByAttribute(atributo,nombre,nodo,etiqueta) {
	var resultados = new Array(); //Este es el array que va almacenando los resultados

	//Si los argumentos nodo y etiqueta están vacios les damos valores por defecto
	if ( nodo == null )	nodo = document;
	if ( etiqueta == null )	etiqueta = '*';

	var elementos = nodo.getElementsByTagName(etiqueta);
	var longitud = elementos.length;

	//Construimos la expresión regular que deseamos encontrar
	var cadena = new RegExp("(\\b)"+nombre+"(\\b)");

	//Recorremos los elementos que deseamos parsear
	for (i = 0, j = 0; i < longitud; i++) {
		if ( cadena.test(elementos[i][atributo]) ) {
			resultados[j] = elementos[i];
			j++;
		}
	}
	//alert("Encontrados: "+ resultados.length);
	return resultados; //devovemos el array de resultados
}

if (navigator.language){ var language = navigator.language.substring(0,2); }
else { var language = navigator.browserLanguage.substring(0,2); }
//language = 'fr'; //=> Para hacer pruebas:

function inicializar() {
	var array_elementos = new Array();
	array_elementos = getElementByAttribute('lang', 'fr');
	if(array_elementos){
		for(var i = 0; i < array_elementos.length; i++){
			traducir(array_elementos[i].id, language);
		}
	}
}
	
function traducir(id, idioma){ 
	google.language.detect(document.getElementById(id).innerHTML, function(result) { 
		if (!result.error && result.language) { 
			google.language.translate(document.getElementById(id).innerHTML, result.language, idioma, function(result) { 
				if (result.translation) { 
					document.getElementById(id).innerHTML = result.translation; 
				} 
			});
		} 
	}); 
}	

function validar(e, permiso, destino) { 
	var tecla, patron, te;
	tecla = (document.all) ? e.keyCode : e.which; 	
	if(tecla == 44 || tecla == 46 || tecla == 8 || tecla == 0 ) { return true; }
	else if( tecla == 13 ){ eval(destino); }
	patron = permiso; 
	te = String.fromCharCode(tecla); 
	return patron.test(te); 
}

function comprobarInput(evento, id, txt_def){ 
	if(evento == 'focus'){
		if(document.getElementById(id).value == txt_def){
			document.getElementById(id).value = '';
			document.getElementById(id).className = 'frm-bus';
		}
	}
	else{
		if(document.getElementById(id).value == ''){
			document.getElementById(id).value = txt_def;
			document.getElementById(id).className = 'frm-bus-off';
		}
	}
}

function camEstBus(indice, total, accion){
	//alert("Familia "+ indice +" de "+ total +" => "+ accion);
	for(var i = 1; i <= total; i ++){
		document.getElementById('des_con_'+ i).className = 'img-bus-vis';	
		document.getElementById('rep_con_'+ i).className = 'est-bus-ocu';	
		document.getElementById('con_bus_'+ i).className = 'est-bus-ocu';	
	}
	if(accion == 1){
		document.getElementById('des_con_'+ indice).className = 'est-bus-ocu';	
		document.getElementById('rep_con_'+ indice).className = 'img-bus-vis';	
		document.getElementById('con_bus_'+ indice).className = 'div-bus-con';	
	}
}

if(language != 'XXX'){ //=> == 'fr'
	google.load("language", "1");
	google.setOnLoadCallback(inicializar);
}