// IE6 se encarga de cambiar esto si no es el caso
var ie6 = false;

// Multiplicador del tamaño de la fuente
var tam_fuente = 1;
var paso = 1.1;

//
// Evento onload
// 
$(document).ready(function() {

	// Evento resize
	$(window).resize(function() {
		resize_handler();
	});
	resize_handler();

	// Ocultación de elementos
	$(".js_hide").css("display", "none");
	$(".eliminar").text("");
	
	// Tamaño de fuentes
	$(".aumentar_fuente").click(function() {
		tam_fuente *= paso;
		$("#principal").css("font-size", tam_fuente+"em");
	});
	$(".reducir_fuente").click(function() {
		tam_fuente /= paso;
		$("#principal").css("font-size", tam_fuente+"em");
	});

	// Semi-pestañas
	$(".menu.semitabs a").click(function(e) {
		$(this).parent().parent().children().removeClass("activo");
		$(this).parent().addClass("activo");
		$(".bloque").removeClass("activo");
		$($(this).attr("href")).addClass("activo");
	});
	$(".subir a").click(function(e) {
		$(".menu.semitabs").children().removeClass("activo");
		$(".menu.semitabs li:first").addClass("activo");
		$(".bloque").removeClass("activo");
		$(".bloque:first").addClass("activo");
	});

	// Pestañas
	$(".menu.tabs li>a").click(function(e) {
		e.preventDefault();
		$(this).parent().parent().children().removeClass("activo");
		$(this).parent().addClass("activo");
		$(".bloque").hide();
		$($(this).attr("href")).show();
	});

	// Accesso a anclas
	var ancla = getAnchor();
	if(ancla.length>0) {
		// Comprobar si el ancla está contenida en un DIV de pestaña
		if($("#"+ancla).parent().attr("id").substr(0, 7) == "div_tab") {
			// En caso afirmativo, localizar el link que muestra dicha pestaña
			// y hacer click() por código
			var num = $("#"+ancla).parent().attr("id").substr(8, 2);
			$("#link_tab_"+num).click();
		}
		if(!ie6) gotoAnchor(ancla);
	}
	tab = getVar("tab");
	if(tab.length) {
	    if ( $("#"+tab).parent().attr("id") == null ) { return; }
		var num = $("#"+tab).parent().attr("id").substr(8, 2);
		$("#link_tab_"+num).click();
	}

	// Forzar la recarga de una página incluso si vamos a un ancla de la misma (necesario para mostrar la pestaña adecuada)
	$("a").click(function(e) {
		href = $(this).attr("href");
		url = parseUri(document.location.href).fileName;
		if ( (href != null) && (url != null) ) 
		{ 
		    a = href.split("#"); 
		    b = url.split("#");
		    if(a[0] == b[0]) {
			    window.location.href = window.location.href;
			    window.location.reload(false);
		}
	}
	});

	// Campos tipo "file upload"
	if($("input[type=file]").length)
		$("input[type=file]").filestyle({ 
			 image: "css/gfx/choose-file.gif",
			 imageheight : 22,
			 imagewidth : 82,
			 width : 134
		});

	// Carrusel trayectoria
	$(".carrusel .anio").hide();
	$(".carrusel .anio.visible").show();
	$(".contenido_anios div").hide();
	$(".contenido_anios div.activo").show();
	$(".carrusel .anterior a").addClass("disabled");
	$(".carrusel .siguiente a").click(function(e) {
		e.preventDefault();
		if($(this).attr("class")=="") {
			$(".carrusel .anterior a").removeClass("disabled");
			$(".carrusel .anio.visible:first").hide();
			$(".carrusel .anio.visible:first").removeClass("visible");
			$(".carrusel .anio.visible:last").next().addClass("visible");
			$(".carrusel .anio.visible:last").show();
			if($(".carrusel .anio.ultimo.visible").length)
				$(".carrusel .siguiente a").addClass("disabled");
		}
	});
	$(".carrusel .anterior a").click(function(e) {
		e.preventDefault();
		if($(this).attr("class")=="") {
			$(".carrusel .siguiente a").removeClass("disabled");
			$(".carrusel .anio.visible:last").hide();
			$(".carrusel .anio.visible:last").removeClass("visible");
			$(".carrusel .anio.visible:first").prev().addClass("visible");
			$(".carrusel .anio.visible:first").show();
			if($(".carrusel .anio.primero.visible").length)
				$(".carrusel .anterior a").addClass("disabled");
		}
	});
	$(".carrusel .anio a").click(function(e) {
		e.preventDefault();
		$(this).parent().parent().children().removeClass("activo");
		$(this).parent().addClass("activo");
		$(".contenido_anios div").hide();
		$($(this).attr("href")).show();
	});

	// Localización
	$(".mapa .capa .med div").hide();
	$(".mapa .capa .med div.activo").show();
	$(".mapa .punto").click(function(e) {
		$(".mapa .punto").removeClass("activo");
		$(this).addClass("activo");
		$(".mapa .capa .med div").hide();
		
        $(".nivel2.corporativa #principal .mapa .capa .top").show();		
        $(".nivel2.corporativa #principal .mapa .capa .bot").show();		
        $(".nivel2.corporativa #principal .mapa .capa .nw").show();		
        $(".nivel2.corporativa #principal .mapa .capa .ne").show();		
        $(".nivel2.corporativa #principal .mapa .capa .sw").show();		
        $(".nivel2.corporativa #principal .mapa .capa .se").show();		
        $(".nivel2.corporativa #principal .mapa .capa .med").show();		
        		
		$("#dir" + $(this).attr("id").substr(5, 2)).show();
		// Apaño para IE6
		if(ie6) {
			$(".nivel2.corporativa #principal .mapa .capa .sw").css("position", "relative");
			$(".nivel2.corporativa #principal .mapa .capa .se").css("position", "relative");
			$(".nivel2.corporativa #principal .mapa .capa .sw").css("position", "absolute");
			$(".nivel2.corporativa #principal .mapa .capa .se").css("position", "absolute");
		}
	});

	// Añadir a favoritos
	$("a.favoritos").click(function(e) {
		if ($.browser.opera == false) {
			e.preventDefault();
			var url = "url"; //this.href;  
			var title = "title"; //this.title;

			if ($.browser.mozilla == true) {
				window.sidebar.addPanel(title, url, '');
				return false;
			} else if($.browser.msie == true) {  
				window.external.AddFavorite( url, title);
				return false;
			} else {
				alert('Por favor, pulsa Ctrl+D (Comando-D en Mac) para añadir esta página a favoritos');
			}
		}
	});

	// Imprimir
	$("a.imprimir").click(function(e) {
		window.print();
	});

	// Enviar a un amigo
	$("a.enviar").click(function(e) {
    e.preventDefault();
		$(".enviar_amigo").show();
		$("#friend_email").focus();
	});
	$(".enviar_amigo").mouseleave(function(e) {
		$(this).hide();
	});
	$(".enviar_amigo a").click(function(e) {
		e.preventDefault();
		$(".enviar_amigo").hide();
	});

});


/** FUNCIONES **/

function resize_handler() {
	if(!ie6) {
		// Caso general: todos los navegadores excepto IE6
		// No se emplea jQuery porque da problemas de javascript con IE7+
		if(!$(document.body).hasClass("print"))
			document.body.style.height = $(window).height()+"px";
		if($(window).width() > 1003) {
			// Caso general: ventana suficientemente grande
			document.body.style.overflowX = "hidden";
			document.getElementById("contenido").style.overflowX = "visible";
		} else {
			// Ventana estrecha
			document.body.style.overflowX = "scroll";
			document.getElementById("contenido").style.overflowX = "hidden";
		}
	} else {
		// Específico para IE6
		if($(window).width() > 1003) {
			// Caso general: ventana suficientemente grande
			$("html").css("overflow-x", "hidden");
			$("#contenido").css("overflow-x", "visible");
		} else {
			// Ventana estrecha
			$("html").css("overflow-x", "scroll");
			$("#contenido").css("overflow-x", "hidden");
		}
	}
}

function parseUri(sourceUri){
    var uriPartNames = ["source","protocol","authority","domain","port","path","directoryPath","fileName","query","anchor"];
    var uriParts = new RegExp("^(?:([^:/?#.]+):)?(?://)?(([^:/?#]*)(?::(\\d*))?)?((/(?:[^?#](?![^?#/]*\\.[^?#/.]+(?:[\\?#]|$)))*/?)?([^?#/]*))?(?:\\?([^#]*))?(?:#(.*))?").exec(sourceUri);
    var uri = {};
    
    for(var i = 0; i < 10; i++){
        uri[uriPartNames[i]] = (uriParts[i] ? uriParts[i] : "");
    }
    
    // Always end directoryPath with a trailing backslash if a path was present in the source URI
    // Note that a trailing backslash is NOT automatically inserted within or appended to the "path" key
    if(uri.directoryPath.length > 0){
        uri.directoryPath = uri.directoryPath.replace(/\/?$/, "/");
    }
    
    return uri;
}

function getAnchor() {
	return parseUri(document.location.href).anchor;
}

function getVar(variable) {
	var query = parseUri(document.location.href).query;
	var variables = query.split("&");
	for (i=0; i<variables.length; i++) {
		par = variables[i].split("=");
		if(par[0]==variable)
			return par[1];
	}
	return "";
}

function gotoAnchor(anchor) {
	var url = document.location.href.split("#");
	document.location.href = url[0]+"#"+anchor;
}