// Seguimiento enlaces externos con Google Analytics


var etiqueta_descarga="Descarga";
var etiqueta_externo="Enlace descarga";

function cargar_seguimiento(){
	//Hacer llamadas a las funciones de seguir enlaces
	
	try{
		/******************[seguir_enlaces_externos]*******************/
		var array_enlaces = new Array(); //Array 			
		add_extension(array_enlaces,'.doc');
		add_extension(array_enlaces,'.pdf');		
		seguir_enlaces_externos_enlaces(array_enlaces);
		
	}catch(err) {}
	
}

function titulo_enlace(enlace){
	tmp_titulo="Enlace descarga";
	if(enlace.innerHTML!=""){
		tmp_titulo=enlace.innerHTML;
	}
	
	return tmp_titulo;
	
}



function seguir_enlaces_externos(ext_no_enlaces){

		 var enlaces = document.getElementsByTagName("a");
		 for (var i=0; i<enlaces.length; i++) { //recorrer enlaces
			if (enlaces[i].getAttribute("target") == "_blank" || enlaces[i].getAttribute("rel") == "external"){//Si es externo
			
				//Por cada enlace recorrer y comprobar la extension
				for(var b=0;b<ext_no_enlaces.length;b++){
					var ruta=enlaces[i].href.toUpperCase();
					if(ruta!=null){
						if(ruta.indexOf("."+ext_no_enlaces[b].toUpperCase())==-1){ 
							//cargar el evento click
							addEvent(enlaces[i], 'click', click_enlace);
						}else{
							b=ext_no_enlaces.length;
						}
					}
				}
				//Si no existe ninguna extension de las que no tienen que hacer seguimiento
				if(ext_no_enlaces.length==0){
					addEvent(enlaces[i], 'click', click_enlace);
				}
				
			}
		 }

}

function seguir_enlaces_externos_ext(extension){	
	var enlaces = document.getElementsByTagName("a");
	 for (var i=0; i<enlaces.length; i++) { //recorrer enlaces
	 	if (enlaces[i].getAttribute("target") == "_blank" || enlaces[i].getAttribute("rel") == "external"){//Si es externo
			//Si el enlace contiene la extension carga el evento
			var ruta=enlaces[i].href.toUpperCase();
			if(ruta!=null){
				if(ruta.indexOf("."+extension.toUpperCase())!=-1){ 
				//cargar el evento click
					addEvent(enlaces[i], 'click', click_archivos);
				}
			}
		}
	 }
}

function seguir_enlaces_externos_enlaces(array_enlaces){

		 var enlaces = document.getElementsByTagName("a");
		 for (var i=0; i<enlaces.length; i++) { //recorrer enlaces

				//Por cada enlace recorrer y comprobar la extension
				for(var b=0;b<array_enlaces.length;b++){
					var ruta=enlaces[i].href;
					if(ruta!=null){
						
						if(ruta.indexOf(array_enlaces[b])!=-1){ 
							//cargar el evento click
							addEvent(enlaces[i], 'click', click_enlace);
						}
					}
				}

		 }
}



function click_enlace(evnt){
         ev = (evnt) ? evnt : event;
         enlace_actual = (ev.target) ? ev.target : ev.srcElement;
		 pageTracker._trackPageview("Documento: " + titulo_enlace(enlace_actual)+"/"+limpiar_href(enlace_actual.href));
		 
		 
		 
}

function click_archivos(evnt){
         ev = (evnt) ? evnt : event;
         enlace_actual = (ev.target) ? ev.target : ev.srcElement;
		 pageTracker._trackPageview(etiqueta_descarga+"/"+limpiar_href(enlace_actual.href));
		 
}



/*Funciones secundarias*/

function limpiar_href(ruta){
	var href_limpia=ruta;
	href_limpia=href_limpia.replace("http://","");
	href_limpia=href_limpia.replace("https://","");
	return href_limpia;
}




function add_extension(array_extensiones,extension){
	array_extensiones[array_extensiones.length]=extension;
}



/**/

//Lanzar el evento onload del body

function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}

addEvent(window, 'load', cargar_seguimiento);