/* --------------------------------------------------------------
                          MAIN MENU
-------------------------------------------------------------- */
var dropmenuobj;
var senderobj;
var currentStyleClass   = "MainMenu";
var disappeardelay      = 150;
var changeMainmenuColor = false;

var ie5 = document.all&&!window.opera;
var ns6 = document.getElementById&&!document.all;
var op8 = window.opera;


function getPosOffset(sender,offsettype){
  var curleft,curtop;
  if (sender.offsetParent) {
		curleft = sender.offsetLeft
		curtop = sender.offsetTop
		while (sender = sender.offsetParent) {
			curleft += sender.offsetLeft
			curtop += sender.offsetTop
		}
	}
	return (offsettype=="left")?curleft:curtop;
}


function showhide(senderStyle,evt){
  senderStyle.left = senderStyle.top = -500;
  
  if (evt.type=="click" && senderStyle.display=="none" || evt.type=="mouseover") {
    senderStyle.display = "block";
  } else { 
    if (evt.type=="click") { senderStyle.display="none"; senderobj.className = currentStyleClass; }
  }
}


function iecompattest() {
  return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}


function clearbrowseredge(sender,whichedge) {
  var edgeoffset = 0;
  if (whichedge=="rightedge") {
    var windowedge=ie5 && !op8? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15;
    dropmenuobj.contentmeasure = dropmenuobj.offsetWidth;
    if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure) { edgeoffset=dropmenuobj.contentmeasure-sender.offsetWidth; }
  } else {
    var topedge    = ie5 && !op8? iecompattest().scrollTop : window.pageYOffset;
    var windowedge = ie5 && !op8? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18;
    dropmenuobj.contentmeasure = dropmenuobj.offsetHeight;
    if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure) { // move up?
      edgeoffset = dropmenuobj.contentmeasure+sender.offsetHeight;
      if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) { edgeoffset = dropmenuobj.y+sender.offsetHeight-topedge; } //up is no good either
     }
  }
  return edgeoffset;
}


function showMenu(sender,evt,StyleClassName,dropmenuID,changeSenderColor){
  if (window.event) {
    event.cancelBubble = true;
  } else {
    if (evt.stopPropagation) { evt.stopPropagation() }
  }
  if (typeof dropmenuobj!="undefined") { hideMenu(); } //hide previous menu
  clearHideMenu();

  dropmenuobj         = document.getElementById(dropmenuID);
  senderobj           = sender;
  changeMainmenuColor = changeSenderColor;
  currentStyleClass   = StyleClassName;
  if (changeMainmenuColor && currentStyleClass.indexOf("_selected")==0) { senderobj.className = currentStyleClass+"_selected"; }
  
  showhide(dropmenuobj.style,evt);
  dropmenuobj.onmouseover = clearHideMenu;
  dropmenuobj.onmouseout  = ie5? function(){dynamicHide(event);} : function(event){dynamicHide(event);}
  dropmenuobj.x           = getPosOffset(sender,"left");
  dropmenuobj.y           = getPosOffset(sender,"top");
  dropmenuobj.style.left  = dropmenuobj.x-clearbrowseredge(sender,"rightedge")+"px";
  dropmenuobj.style.top   = dropmenuobj.y-clearbrowseredge(sender,"bottomedge")+sender.offsetHeight+"px";

  return clickreturnvalue();
}


function clickreturnvalue(){
  return 1;
}


function contains_ns6(a, b) {
  while (b.parentNode) {
    if ((b = b.parentNode)==a) { return true; }
  }
  return false;
}


function dynamicHide(evt){
  if (ie5&&!dropmenuobj.contains(evt.toElement)) {
    delayHideMenu();
  } else {
    if (ns6&&evt.currentTarget!=evt.relatedTarget && !contains_ns6(evt.currentTarget,evt.relatedTarget)) { 
      delayHideMenu();
    }
  }
}


function delayHideMenu(){
  delayhide = setTimeout(hideMenu,disappeardelay);
}


function clearHideMenu(){
  if (typeof delayhide!="undefined") { clearTimeout(delayhide); }
}


function hideMenu() {
  dropmenuobj.style.display = "none";
  if (changeMainmenuColor) { senderobj.className = currentStyleClass; }
}


function openItem(url,newwin) {
  if (newwin==1) {
    window.open(url);
  } else {
    location.href = url;
  }
}
