function webClient() {



  var i;



  this.IE    = false;

  this.NS    = false;

  this.OP    = false; 

  this.release = null;

  

  if ((i = navigator.userAgent.indexOf("Opera")) >= 0) {

    this.OP = true;

    this.version = parseFloat(navigator.userAgent.substr(i + 5));

    return;

  }



  

  if ((i = navigator.userAgent.indexOf("MSIE")) >= 0) {

    this.IE = true;

    this.release = parseFloat(navigator.userAgent.substr(i + 4));

    return;

  }



  if ((i = navigator.userAgent.indexOf("Netscape6/")) >= 0) {

    this.NS = true;

    this.release = parseFloat(navigator.userAgent.substr(i + 10));

    return;

  }



  if ((i = navigator.userAgent.indexOf("Netscape7/")) >= 0) {

    this.NS = true;

    this.release = parseFloat(navigator.userAgent.substr(i + 10));

    return;

  }



  if ((i = navigator.userAgent.indexOf("Gecko")) >= 0) {

    this.NS = true;

    this.release = 6.1;

    return;

  }

}





var webClient = new webClient();



var activeButton = null;

var activeSubButton = null;



 if (webClient.IE)

	 document.onmousedown = pageMouseDown;

  else

     document.addEventListener("mousedown", pageMouseDown, true);



function pageMouseDown(event) {



  var el;

  

  if (webClient.IE)

    el = window.event.srcElement;

  else

    el = (event.target.tagName ? event.target : event.target.parentNode);



  if (el == activeButton || el == activeSubButton)

    return;



  if (el.className != "menuButton"  && el.className != "menuItem" &&

      el.className != "menuItemSep" && el.className != "menu") {

	    if (activeButton) closeMenu(activeButton);

    	if (activeSubButton) closeSubMenu(activeSubButton);

	}

}



function menuTouch(event, menuName) {

  var button;

  if (webClient.IE)

    button = window.event.srcElement;

  else

    button = (event.target.tagName ? event.target : event.target.parentNode);



  if (!button.menu && menuName)

    button.menu = document.getElementById(menuName);



  if (activeButton && activeButton != button)

    closeMenu(activeButton);

  if (activeSubButton && activeSubButton != button)

    closeSubMenu(activeSubButton);

	

  if (!button.isactive)

  	if (menuName) {

	    openMenu(button);

	}

  return false;

}



function subMenuTouch(event, menuName) {

  var button;



  if (webClient.IE)

    button = window.event.srcElement;

  else

    button = (event.target.tagName ? event.target : event.target.parentNode);



  if (!button.menu && menuName)

    button.menu = document.getElementById(menuName);



  if (activeSubButton && activeSubButton != button)

    closeSubMenu(activeSubButton);



  if (!button.isactive && menuName)

    openSubMenu(button);



  return false;

}



function openSubMenu(button) {



  var w, dw, x, y;



  button.className = "menuItemActive";  

  

  if (webClient.IE && !button.menu.firstChild.style.width) {

    w = button.menu.firstChild.offsetWidth;

    button.menu.firstChild.style.width = w + "px";

    dw = button.menu.firstChild.offsetWidth - w;

    w -= dw;

    button.menu.firstChild.style.width = w + "px";

  }



  x = getPageOffsetLeft(button)+ button.offsetWidth;;

  y = getPageOffsetTop(button);



  x++;

  y++;

  

  button.menu.style.left = x + "px";

  button.menu.style.top  = y + "px";

  button.menu.style.visibility = "visible";



  button.isactive = true;

  activeSubButton = button;

}



function openMenu(button) {



  var w, dw, x, y;



  button.className = "menuButtonActive";



  if (webClient.IE && !button.menu.firstChild.style.width) {

    w = button.menu.firstChild.offsetWidth;

    button.menu.firstChild.style.width = w + "px";

    dw = button.menu.firstChild.offsetWidth - w;

    w -= dw;

    button.menu.firstChild.style.width = w + "px";

  }



  x = getPageOffsetLeft(button)-1;  

  y = getPageOffsetTop(button) + button.offsetHeight + 1;



  button.menu.style.left = x + "px";

  button.menu.style.top  = y + "px";

  button.menu.style.visibility = "visible";



  button.isactive = true;

  activeButton = button;

}



function closeMenu(button) {

  button.className = "menuButton";



  if (button.menu) button.menu.style.visibility = "hidden";



  button.isactive = false;

  activeButton = null;

}



function closeSubMenu(button) {

  button.className = "menuItem";



  if (button.menu) button.menu.style.visibility = "hidden";



  button.isactive = false;

  activeSubButton = null;

}





function getPageOffsetLeft(el) {

  return el.offsetLeft + (el.offsetParent ? getPageOffsetLeft(el.offsetParent) : 0);

}



function getPageOffsetTop(el) {

  return el.offsetTop + (el.offsetParent ? getPageOffsetTop(el.offsetParent) : 0);

}