<!--

//Funciones de carga de menú dinamico con JSON

var fname = 'js/dynamic-menu.json'; 	//archivo donde esta definido el menú dinámico
window.onload = loadJSON;		//Cuando termina la carga, invocamos la funcion loadJSON


function createXHR() { //Llamada AJAX para cargar el archivo que contiene la definicion del menu dinamico

    var request = false;
        try {
            request = new ActiveXObject('Msxml2.XMLHTTP');
        } catch (err2) {
            try {
                request = new ActiveXObject('Microsoft.XMLHTTP');
            } catch (err3) {
		try {
			request = new XMLHttpRequest();
		} catch (err1) {
			request = false;
		}
            }
        }
    return request;
}


function buildMenu(jsoncontent) {
	var data=eval("(" + jsoncontent + ")");
	var line="<dl>";
	for(i = 0; i < data.menu.menuitems.length; i++){
		line+= "<dt><a href='"+data.menu.menuitems[i].url+"'><span class='opciones'>"+data.menu.menuitems[i].titulo+"</span></a></dt>";
		line+= "<dd><ul>";

		for(j = 0; j < data.menu.menuitems[i].opciones.length; j++){
			var opcion=data.menu.menuitems[i].opciones[j];
			line+="<li><a href='#' onclick='cargaZona(\""+opcion.url+"\");'><span class='subopciones'>"+opcion.value+"</span></a></li>";
		}

		line+="</ul></dd>";
	}
	line+="</dl>";
	document.getElementById("menu").innerHTML+=line;


	//Cargamos la animacion de JQuery para cada opcion del menu

		$("dd").hide();
		$("dt a").click(function(){
			$("dd:visible").slideUp("slow");
			$(this).parent().next().slideDown("slow");

			//Comprobamos que cuando se active el menu se cargue alguna zona definida
			//si el enlace en el menu esta definido como #, no carga nada
			var carg=""+$(this)[0];
			var indice=carg.indexOf("#");
			if(indice==-1){cargaZona(carg);}
			return false;
		});

}


function loadJSON() {
	var xhr=createXHR();
	xhr.open("GET", fname,true);
	xhr.onreadystatechange=function() {
		if (xhr.readyState == 4) {
			if (xhr.status != 404) {
				buildMenu(xhr.responseText);
			} else {
				document.getElementById("zone").innerHTML = fname + " Archivo de Definicion de menu no encontrado";
			}
		}
	}
	xhr.send(null);
}

function cargaZona(zona){
	var obj=document.getElementById("datamain");
	obj.src=zona;
}


//-->

