function target_blank() {
	if (!document.getElementsByTagName) {
		return;
	}

	var anchors = document.getElementsByTagName("a");
	var i;
	var enlace;

	for (i = 0; i < anchors.length; i++) {
		var enlace = anchors[i];
		if (enlace.getAttribute("href") && enlace.getAttribute("rel") == "external") {
			enlace.target = "_blank";
		}
	}

}

function maxminwidth() {
	if (!document.getElementById) {
		return;
	}

	var capa = document.getElementById("contenedor");
	var navegador = document.getElementById("index");
	var ancho = navegador.clientWidth;
	var maximo = 993;
	var max_contenedor = maximo - 20;
	var minimo = 780;
	var min_contenedor = minimo - 20;

	if (ancho > maximo) {
		capa.style.width = max_contenedor + "px";
	}
	else {
		if (ancho < minimo) {
			capa.style.width = min_contenedor + "px";
		}
		else {
			capa.style.width = (ancho - 20) + "px";
		}
	}

}

function niveles() {
	if (!document.getElementById) {
		return;
	}

	var i = 0;
	var listaDosNiveles;
	var listaTresNiveles;

	listaDosNiveles = document.getElementById("DN");
	listaTresNiveles = document.getElementById("TN");

	// Comprobamos si existe una lista desordenada con el class="dosniveles" y ocultamos todas las sublistas
	if (listaDosNiveles) {
		arbol('-1');
	}
	if (listaTresNiveles) {
		arbolTres('-1','TN');
	}
}

function arbol(id_elemento) {
	
	var i;
	var elementos;

	elementos = document.getElementById("DN").getElementsByTagName("ul");
	
	for (i = 0; i < elementos.length; i++) {
		elementos[i].style.display = "none";
	}
	elementos = document.getElementById("DN").getElementsByTagName("li");
	
	for (i = 0; i < elementos.length; i++) {
		elementos[i].className = "";
	}

	if (id_elemento != -1) {
		// Para el elemento clickado, si está expandido contraemos y viceversa.
		if (ultimo_id == id_elemento) {
			ultimo_id = "";
			document.getElementById("DN_" + id_elemento).className = "";
		}
		else {
			ultimo_id = id_elemento;
			document.getElementById("DN_" + id_elemento).className = "mostrarDN";
			document.getElementById("subDN_" + id_elemento).style.display = "block";
		}
	}
}

function arbolTres(id_elemento,nivel) {
	
	var i;
	var aux;
	var elementos;
	
	if (nivel == "TN") {

		aux = nivel;
		
		elementos = document.getElementById(aux).getElementsByTagName("ul");

		for (i = 0; i < elementos.length; i++) {
			elementos[i].style.display = "none";
		}
		elementos = document.getElementById(aux).getElementsByTagName("li");
		
		for (i = 0; i < elementos.length; i++) {
			elementos[i].className = "";
		}

		if (id_elemento != -1) {
			// Para el elemento clickado, si está expandido contraemos y viceversa.
			if (ultimo_id == id_elemento) {
				ultimo_id = "";
				ultimo_subid = "";
				document.getElementById(aux + "_" + id_elemento).className = "";
			}
			else {
				ultimo_id = id_elemento;
				ultimo_subid = "";
				document.getElementById(aux + "_" + id_elemento).className = "mostrarTN";
				document.getElementById("sub" + aux + "_" + id_elemento).style.display = "block";
			}
		}

	}

	else {

		aux = "sub" + nivel;
		
		elementos = document.getElementById(aux).getElementsByTagName("ul");

		for (i = 0; i < elementos.length; i++) {
			elementos[i].style.display = "none";
		}
		elementos = document.getElementById(aux).getElementsByTagName("li");
		
		for (i = 0; i < elementos.length; i++) {
			elementos[i].className = "";
		}

		if (id_elemento != -1) {
			// Para el elemento clickado, si está expandido contraemos y viceversa.
			if (ultimo_subid == id_elemento) {
				ultimo_subid = "";
				document.getElementById(aux + "_" + id_elemento).className = "";
			}
			else {
				ultimo_subid = id_elemento;
				document.getElementById(nivel + "_" + id_elemento).className = "mostrarSubTN";
				document.getElementById(aux + "_" + id_elemento).style.display = "block";
			}
		}

	}
}

function formularios() {
	if (!document.getElementsByTagName) {
		return;
	}

	var los_inputs = document.getElementsByTagName("input");
	for (var i=0; i < los_inputs.length; i++) {
		var el_input = los_inputs[i];
		if (el_input.getAttribute("type").toLowerCase() == "text" || el_input.getAttribute("type").toLowerCase() == "password") {
			el_input.onfocus = function() {
					if ((this.value.charCodeAt(0) == 32 || this.value.charCodeAt(0) == 160) && this.value.length == 1) {
						this.value = "";
					}
				} ;
		}
	}
	
	var los_textareas = document.getElementsByTagName("textarea");
	for (var i=0; i < los_textareas.length; i++) {
		var el_textarea = los_textareas[i];
		el_textarea.onfocus = function() {
				if (this.value.charCodeAt(0) == 32 || this.value.charCodeAt(0) == 160 && this.value.length == 1) {
					this.value = "";
				}
			} ;
	}	
}

function arrancar() {
	target_blank();
	maxminwidth();
	niveles();
	formularios();
}

var ultimo_id = "";
var ultimo_subid = "";

window.onload = arrancar;
window.onresize = maxminwidth;
