/*
	Expandable Listmenu Script
	Author : Daniel Nolan
	Modified by: Lito88 MVDCOMM 2005
	http://www.bleedingego.co.uk/webdev.php
*/

function initMenus() {
	if (!document.getElementsByTagName) return;
	var cat = 0;
	/*if (document.MAINFORM){ //evaluo el form
		if (document.MAINFORM.cat_js){
			cat = document.MAINFORM.cat_js.value;//categoria pasada por parametro en genexus
		} 
	}*/
	var aMenus = document.getElementsByTagName("LI");
	for (var i = 0; i < aMenus.length; i++) {
		var mclass = aMenus[i].className;
		if (mclass.indexOf("treenode") > -1) {
			var submenu = aMenus[i].childNodes;
			this.className = "";
			aux = 1;
			/*for (var j = 0; j < submenu.length; j++) {
				
				if (submenu[j].tagName == "A") {
					submenu[j].onclick = function() {
						var node = this.nextSibling;
											
						while (1) {
							if (node != null){
								if (node.tagName == "UL") {
									var d = (node.style.display == "none")
									node.style.display = (d) ? "block" : "none";
									this.className = (d) ? "treeopen" : "treeclosed";
									return false;
								}
								node = node.nextSibling;
							} else {
								return false;
							}
						}
						return false;
					}
					
					submenu[j].className = (mclass.indexOf("open") > -1) ? "treeopen" : "treeclosed";
				}
				
				if (submenu[j].tagName == "UL"){
					submenu[j].style.display = (mclass.indexOf("open") > -1) ? "block" : "none";
					var aux =0;
				}	
			}*/
		}
		
		/* aca hago los controles para cuando hay que recordar el nivel 
		 si se comenta esta parte, hay que comentar donde obtiene la variable 
		 Como funciona esto? - Para la categoria q se hizo click recorro y abro todos los nodos padres, hasta
		 llegar al menu superior, ahi paro de recorrer para no salirme de la la lista.
		 Tambien tenemos que ver si esta categoria tiene hijos, ya q si tiene tenemos que desplegar el menu inferior.*/
		 		
		/*var id = aMenus[i].id; //obtengo el id del LI que estoy evaluando.
		if ( id == cat){ //si el id es igual a la categoria pasada por parametro hago todo lo de abajo.
			var padre = aMenus[i].parentNode; //tomo el primer padre
			// recorro para abrir los padres 
			while(1){
				if (padre.tagName == "UL") //si el tag name es un ul, tengo que mostrarlo
					padre.style.display = "block";
				if (padre.tagName == "LI") //si el tag name es un li tengo que cambiarle el class por treeopen
					padre.className = "treeopen";
				if (padre.id == "menu") //aca evaluo si se llego al final
					break; //si es el final, salgo del while		
				padre = padre.parentNode; //me cambio al proximo padre.
			}
			// muestro menu inferior si es que tiene 	
			hijos = aMenus[i].childNodes;
			for (var j = 0; j < hijos.length; j++){
				if (hijos[j].tagName == "UL"){
					hijos[j].style.display = "block"; //entra aca solo si tiene hijos, y los muestro.
					break; //como solo puede existir un nodo UL, si encontre uno salgo del for.
				}
			}
		}*/
		/* fin controles de recordar nivel */
		
		/* Esta parte que viene aca abajo es el armado de los links, para que funcione los links en cualquier parte del menu usamos esto */
		//if (aux == 0){  //este control se habilita si solo los de ultimo nivel tienen link
				/*aMenus[i].onclick = function(){
				//location.href = "http://www.barracacentral.com.uy//Hecategorias.aspx?2,1,284,1";
										hijos = this.childNodes;
										for (var j = 0; j < hijos.length; j++){
											if (hijos[j].tagName == "A"){
												location.href = hijos[j].href;
												break;
											}
										}
									}*/
		//	}
	}
}

window.onload = initMenus;