var flag                = false;
var running             = false;
var timerId             = null;
var delay               = 500;
var currentMenu         = null;
var previousMenu        = null;
var loaded              = false;
var testing             = false;
var allopened           = false;
var homepage            = false;

// startList is for secondary nav
//        startList = function() {
	function startList() {
        if (document.all&&document.getElementById) {
	  navRoot = document.getElementById("auxnav-ul");
	  for (i=0; i<navRoot.childNodes.length; i++) {
	    node = navRoot.childNodes[i];
	    if (node.nodeName=="LI") {
	      node.onmouseover=function() {
		this.className+=" over";
	      }
	    node.onmouseout=function() {
	    this.className=this.className.replace(" over", "");
	    }
           }
          }
         }
	}

function StartTimer(event){running = true; timerId = setTimeout(event,delay);}
function StopTimer(){running = false; clearTimeout(timerId);}
function SetElementPosition(id,top,left){
  
  if (testing) { alert("SetElementPosition\nid = "+id+"\ntop = "+top+"\nleft = "+left); }
  if (ns4) {
    eval('document.'+id).top = top;
    eval('document.'+id).left = left;
  } else if (ns6) {
    obj = document.getElementById(id);
    obj.style.top = top+'px';
    obj.style.left = left+'px';
  } else {
    eval(id).style.top  = top;
    eval(id).style.left = left;
  }
}
function SetVisibility(id,flag) {
  if (ns4) {
    var str = (flag) ? 'show' : 'hide';
    eval("document."+id).visibility = str;
  } else if (ns6) {
    var str = (flag) ? 'visible' : 'hidden';
    document.getElementById(id).style.visibility = str;
  } else {
    var str = (flag) ? 'visible' : 'hidden';
    eval("document.all."+id).style.visibility = str;
  }
}
function getImageTop(imgID) {
  if (ns4) return eval(imgID).y;
  else return getRealTop(imgID);
}
function getImageLeft(imgID) {
  if (ns4) return eval(imgID).x
  else return getRealLeft(imgID);
}
function getRealTop(imgElem) {
  yPos = eval(imgElem).offsetTop;
  tempEl = eval(imgElem).offsetParent;
  while (tempEl != null) {
    yPos += tempEl.offsetTop;
    tempEl = tempEl.offsetParent;
  }
  return yPos;
}
function getRealLeft(imgObj) {
	xPos = eval(imgObj).offsetLeft;
	tempObj = eval(imgObj).offsetParent;
  while (tempObj != null){
    xPos   += tempObj.offsetLeft;
    tempObj = tempObj.offsetParent;
  }
	return xPos;
}
function getImageWidth(id) {
  if (ie4){
    return eval('document.all.'+id).style.pixelWidth;
  } else if (ns4) {
    return eval('document.'+id).width;
  } else {
    return document.getElementById(id).offsetWidth;
  }
}
function getElementWidth(id) {
  if      (ie4){ return eval('document.all.'+id).offsetWidth; }
  else if (ns4){ return eval('document.'+id).clip.width; }
  else         { return document.getElementById(id).offsetWidth; }
}
function getElementHeight(id) {
  if      (ie4){ return eval('document.all.'+id).offsetHeight; }
  else if (ns4){ return eval('document.'+id).clip.height; }
  else         { return document.getElementById(id).offsetHeight; }
}
function layerWrite(id,text) {
  if (ns4) {
    var lyr = document.layers[id].document;
    lyr.open();
    lyr.write(text);
    lyr.close();
  } else if (ns6) {
    rng = document.createRange();
    el = document.getElementById(id);
    rng.setStartBefore(el);
    htmlFrag = rng.createContextualFragment(text);
    while (el.hasChildNodes()) el.removeChild(el.lastChild);
    el.appendChild(htmlFrag);
  } else if (ie4 || ie5) {
    document.all[id].innerHTML = text;
  }
}
function in_array(needle,haystack) {
  var i;
  for (i=0; i<haystack.length; i++) {
    if (haystack[i] == needle) { return true; }
  }
  return false;
}
function Init(id) {
  if (ie5 || ns6) { LoadMenus(); }
  loaded = true;
  startList();
}
function LoadMenus() {
  for (var i=0; i<5; i++) {
    imgId    = 'nav'+i;
    menuId   = 'menu'+i+'Div';
    shadowId = 'menubg'+i+'Div';
    iframeId = 'menu'+i+'Iframe';
    
    //get anchor image
    if (ns6){ anchorObj = eval('document.getElementById("'+imgId+'")'); }
    else    { anchorObj = eval('document.images["'+imgId+'"]'); }
    
    //set position
    t = getImageTop(anchorObj);
    l = getImageLeft(anchorObj);
    w = getImageWidth(imgId);
    
    //different left positions to line up with text
    menuTop  = t + 52;
    menuLeft = (i == 4) ? l - 111 : l;
    
    //set
    SetElementPosition(menuId,menuTop,menuLeft);
    
    //shadow
    menuWidth  = getElementWidth(menuId);
    menuHeight = getElementHeight(menuId);
    if (menuWidth > 1 && menuHeight > 1) {
      var tempstring,writestring;
      tempstring = '<img src="/images/spacer.gif" width="'+menuWidth+'" height="'+menuHeight+'" alt="" border="0">';
      writestring =  (!(mac && (ie4 || ie5))) ? '<table cellpadding="0" cellspacing="0" border="0"><tr><td class="transparent">'+tempstring+'</td></tr></table>' : '';
      layerWrite(shadowId,writestring);
      shadowTop  = menuTop + 4;
      shadowLeft = menuLeft + 4; 
      SetElementPosition(shadowId,shadowTop,shadowLeft);
      if (!mac) {
        document.getElementById(iframeId).style.width = menuWidth + 4;
        document.getElementById(iframeId).style.height = menuHeight + 4;
        document.getElementById(iframeId).style.top = menuTop;
        document.getElementById(iframeId).style.left = menuLeft;
      }
    }
  }
}
function Show(id) {
  if (running) { StopTimer(); }
  currentMenu = id;
  if (currentMenu != previousMenu && previousMenu != null) { Hide(previousMenu); }
  eval('document.getElementById("menu'+id+'Div").style.visibility = "visible"');
  eval('document.getElementById("menubg'+id+'Div").style.visibility = "visible"');
  if ('menu'+id+'Iframe' && !mac) {
    eval('document.getElementById("menu'+id+'Iframe").style.visibility = "visible"');
  }
  previousMenu = currentMenu;
}
function Hide(id) {
  if (id == null) { return; }
  eval('document.getElementById("menu'+id+'Div").style.visibility = "hidden"');
  eval('document.getElementById("menubg'+id+'Div").style.visibility = "hidden"');
  if ('menu'+id+'Iframe' && !mac) {
    eval('document.getElementById("menu'+id+'Iframe").style.visibility = "hidden"');
  }
}
