// Node Functions

if(!window.Node){
  var Node = {ELEMENT_NODE : 1, TEXT_NODE : 3};
}

function checkNode(node, filter){
  return (filter == null || node.nodeType == Node[filter] || node.nodeName.toUpperCase() == filter.toUpperCase());
}

function getChildren(node, filter){
  var result = new Array();
  var children = node.childNodes;
  for(var i = 0; i < children.length; i++){
    if(checkNode(children[i], filter)) result[result.length] = children[i];
  }
  return result;
}

function getChildrenByElement(node){
  return getChildren(node, "ELEMENT_NODE");
}

function getFirstChild(node, filter){
  var child;
  var children = node.childNodes;
  for(var i = 0; i < children.length; i++){
    child = children[i];
    if(checkNode(child, filter)) return child;
  }
  return null;
}

function getFirstChildByText(node){
  return getFirstChild(node, "TEXT_NODE");
}

function getNextSibling(node, filter){
  for(var sibling = node.nextSibling; sibling != null; sibling = sibling.nextSibling){
    if(checkNode(sibling, filter)) return sibling;
  }
  return null;
}
function getNextSiblingByElement(node){
        return getNextSibling(node, "ELEMENT_NODE");
}

// Menu Functions & Properties

var activeMenu = null;

function showMenu() {

    if (getNextSiblingByElement(this).style.display == "") {
        this.className = "active";
        getNextSiblingByElement(this).style.display = "block";
    }

    else if (getNextSiblingByElement(this).style.display == "block") {
        //activeMenu.className = "";
        getNextSiblingByElement(this).style.display = "none";
    }
    else if (getNextSiblingByElement(this).style.display == "none") {
       
        //this.className = "active";
        getNextSiblingByElement(this).style.display = "block";

    }
/*
  if(activeMenu){
    activeMenu.className = "";
    getNextSiblingByElement(activeMenu).style.display = "none";
  }
  if(this == activeMenu){
    activeMenu = null;
  } else {
    this.className = "active";
    getNextSiblingByElement(this).style.display = "block";
    activeMenu = this;
  }
  */
  return false;
}

function initMenu(){
  var menus, menu, text, x, ax, i;
  //menus = getChildrenByElement(document.getElementById("jl-menuleft"));
	h = $$('.jl-menuleft');
	//console.log(h);
	if(h && h.length>0) {
		h.each(function(el,i) {
			menus = $ES('li',el);
			for(i = 0; i < menus.length; i++){
				menu = menus[i];
				x = getFirstChild(menu,"a");
				ax = getChildren(menu,"ul");
				if(ax.length > 0) {
					x.onclick = showMenu;
					x.onfocus = function(){this.blur()};
				}
			  }
		});
	}
  
}

if(document.createElement) window.onload = initMenu;
