/**
* Progr. : J. Manuel de la Chica - ISSA
* Abre un submenu en el frame actual del portal
* configurandolo previamente a la visualizacion
**/
function abrirMenu(nombreMenu, nombrePadre, direccion){
	numeroHijos = 0
	try{
	numeroHijos = parent.frames["contenidos"].comprobarHijos(nombreMenu);
	
	}catch(exception){
		return;
	}
	if (numeroHijos == 0){
		parent.frames["contenidos"].location.href=direccion
	}
	var menuSeleccionadoActual = ""
	//Pone en estado OCULTO las capas ACTUALMENTE VISIBLES
	for (i=0; i<=document.menu.elements.length;i++){
		obj = document.menu.elements[i];
		if (obj != undefined){
			descripcion = obj.name;
			nivel = descripcion.substr(0,1);
			nombre = descripcion.substr(1,descripcion.length);
			estadoActual = obj.value;
			texto = obj.id;
			
			if ((nivel == 3))
			{
				if (estadoActual == 1){
					menuSeleccionadoActual = descripcion.substr(0,descripcion.lastIndexOf("_"))
				}
				document.getElementById(descripcion).style.visibility="hidden"; 
				obj.value = 0;
			}
		}
	}
	
	//Pone en estado VISIBLE las capas ACTUALMENTE OCULTAS
	if (menuSeleccionadoActual != "3"+nombrePadre+"_"+nombreMenu){
		// Se ha pinchado un menu distinto al  MENU ACTUALMENTE VISIBLE
		for (i=0; i<=document.menu.elements.length;i++){
		obj = document.menu.elements[i];
			if (obj != undefined){
				descripcion = obj.name;
				nivel = descripcion.substr(0,1);
				nombre = descripcion.substr(1,descripcion.length);
				estadoActual = obj.value;
				texto = obj.id;
			
				if ((descripcion.indexOf("3"+nombrePadre+"_"+nombreMenu)==0)){
					obj.value = 1; 
				}
			}
		}
	}
	
	visualizarMenu(nombrePadre, 1)
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Devuelve el tamaņo / altura de la celda que ha de reservarse en la 
* visualizacion del menu
**/
function calcularIncremento(texto){
	incremento = 22
	longitudTexto = texto.length
	if (longitudTexto > 28){
		incremento = incremento + 12
		if (longitudTexto > 54){
			incremento = incremento + 12
			if (longitudTexto > 70){
				incremento = incremento + 12
				if (longitudTexto > 96){
					incremento = incremento + 12
					if (longitudTexto > 122){
						incremento = incremento + 12
					}
				}
			}
		}
	}
	return incremento;
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Carga de una pagina en un marco de la aplicacion
**/
function cargarMarco(marco, pagina, capa){
	//parent.frames[marco].location.href=pagina+"&capa="+capa;
	
	location.href=pagina+"&capa="+capa;
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Carga de un submenu en el frame indicado del portal
**/
function cargarMenu(menuSeleccionado,enlace,destino,capa){
	altura = 0;
	if (destino==""){
		destino = "contenidos";
	}
	tieneHijos = false;
	try{
	totalHijos = parent.frames["contenidos"].comprobarHijos(menuSeleccionado);
	}catch(exception){
		return;
	}

	
	if (totalHijos == 0){
		direccion = enlace+"&menu="+menuSeleccionado+"&altura="+altura+"&capa="+capa;	
		parent.frames[destino].location.href=direccion
	}
	
	
	//altura = document.getElementById(capa).style.top
	//altura = altura.substr(0, (altura.length-2))
	
	//if (destino==""){
	//	destino = "contenidos";
	//}
	//direccion = "GetRecords?Template=cgpj/cgpj/configurarMarcos.html&nuevaTemplate="+enlace+"&menu="+menuSeleccionado+"&altura="+altura+"&capa="+capa;
	//parent.frames[destino].location.href=direccion
}
function comprobarHijos(menuPadre){
	contador = 0;
	for (i=0; i<=document.menu.elements.length;i++){
		obj = document.menu.elements[i];
			if (obj != undefined){
				descripcion = obj.name;
				nivel = descripcion.substr(0,1);
				nombre = descripcion.substr(1,descripcion.length);
				padre = obj.value;
				texto = obj.id;
				if (menuPadre == padre){
					contador = contador+1;
				}
				
			}
	}
	return contador;
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Configura el menu seleccionado como MENU FIJO del portal
**/
function fijarMenu(menuPrincipal){
	parent.frames['menuizquierda'].setCapaFijada(menuPrincipal)
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Oculta todas las opciones y subopciones actualmente visibles,
* pero no reconfigura el menu. Prepara para una nueva visualizacion.
**/
function ocultarTodo(){
	for (i=0; i<=document.menu.elements.length;i++){
		obj = document.menu.elements[i];
		if (obj != undefined){
			descripcion = obj.name;
			nivel = descripcion.substr(0,1);
			nombre = descripcion.substr(1,descripcion.length);
			estadoActual = obj.value;
			texto = obj.id;
			if (obj.value == 1){
				document.getElementById(descripcion).style.visibility="hidden"; 
			}
		}
	}
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Coloca una capa perteneciente a un menu ternario en la posicion adecuada
**/
function ubicarMenu(capa, textoCapa){
	document.getElementById(capa).style.top=getAlto();
	nuevoAlto = getAlto() + calcularIncremento(textoCapa);
	setAlto(nuevoAlto);
}

/**
* Progr. : J. Manuel de la Chica - ISSA
* Visualiza un menu principal en el frame actual
**/
function visualizarMenu(menuPrincipal, proximoEstado){
	setAltura(105);
	ocultarTodo();
	for (i=0; i<=document.menu.elements.length;i++){
		obj = document.menu.elements[i];
		if (obj != undefined){
			descripcion = obj.name;
			nivel = descripcion.substr(0,1);
			nombre = descripcion.substr(1,descripcion.length);
			estadoActual = obj.value;
			texto = obj.id;
			
			if ((descripcion.indexOf(menuPrincipal)==1)||(descripcion.indexOf(menuPrincipal)==0))
			{
				if ((nivel !=3) || ((nivel ==3) && (estadoActual==1)))
				{
					document.getElementById(descripcion).style.top = getAltura();
					if (proximoEstado == 1){
						//visualizarMenuFijo(0);
						document.getElementById(descripcion).style.visibility="visible"; 
					}
					if (proximoEstado == 0){
						document.getElementById(descripcion).style.visibility="hidden"; 
						visualizarMenuFijo(1);
					}
			
					nuevaAltura = getAltura() + calcularIncremento(texto);
					setAltura(nuevaAltura)	
				}
			}
		}
	}	

}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Visualiza un menu principal en el frame indicado del portal
**/
function visualizarMenuFrame(frameDestino, menuPrincipal, proximoEstado){
	if (menuCargado == true){
		parent.frames[frameDestino].visualizarMenu(menuPrincipal, proximoEstado);
	}
}
/**
* Progr. : J. Manuel de la Chica - ISSA
* Visualiza el menu fijado por el usuario, ocultando el que 
* se esta visualizando actualmente
**/
function visualizarMenuFijo(proximoEstado){
	menuFijado = getCapaFijada();
	if (menuFijado != "ninguna"){
		ocultarTodo();
		visualizarMenu(menuFijado, proximoEstado);
	}
}


