var defaultText ="Search for ..."
function prepPage() { defaultStatus = "Welcome to Hoefer" }
function refreshAd() { if(getElem("adBG")) { getElem("adBG").background="url(images/HLBorder.gif)"; } }

function trim(trimString) { while(trimString.charAt(0)==" ") { trimString=trimString.substring(1,trimString.length); } while(trimString.charAt(trimString.length-1)==" ") { trimString=trimString.substring(0,trimString.length-1); } return trimString }

function clearInput(formField) { if(defaultText=="") { defaultText = customDefaultText } if(defaultText!="") { if(formField.value==defaultText) { formField.value = '' } } }

function resetInput(formField) { if(defaultText=="") { defaultText = customDefaultText }   if(defaultText!="") { formField.value = trim(formField.value); if(formField.value=='') { formField.value = defaultText } } }

function toPage(toURL) { document.location.href=toURL }

function pageBack() { window.history.back() }

function checkSearch(cF) {
  if((cF.search.value=='')||(cF.search.value=='Search for...')) {
    alert('Please enter a search phrase');return
  }
  cF.submit()
}

// Menu code starts here
//N4 = document.layers ? true: false
//IE = document.all ? true: false
//N6 = document.getElementById ? true: false
//visMenu = -1
//subMenus = new Array()
//subIndexes = new Array("-1")
//topMenuW = 110
//menuW = 170
//menuH = 18
//topNav = false
//t = null
var N4 = document.layers ? true: false
var IE = document.all ? true: false
var N6 = document.getElementById ? true: false
var visMenu = -1
var subMenus = new Array()
var subIndexes = new Array("-1")
var topMenuW = 110
var menuW = 170
var menuH = 18
var topNav = false
var t = null

function hasSubMenu(parID) {
  for(var i=1;i<menuData.length;++i) { if(menuData[i][1]==parID) { return true } }
  return false
}

function getElem(elemID,returnObj) {
  if(returnObj==null) { returnObj = false }
  if(IE) { var menu = document.all(elemID) }
  else if(N4) { var menu = document.layers[elemID] }
  else { var menu = document.getElementById(elemID) }
  if(menu==null) { return false }
  if(returnObj) { return menu }
  return N4 ? menu : menu.style
}

function hideMenus() { if(t!=null) { clearTimeout(t); } for(var i=1;i<subMenus.length;++i) { if((subMenus[i]!="") && (parseInt(subMenus[i].left)!=-500) && ((visMenu==-1) || (menuData[visMenu].parentIDs.indexOf("*"+i+"*")==-1))) { subMenus[i].left=-500 } } }
function delayHideMenu(menuIndex) { rollRow(menuIndex,"tableRowColor"); visMenu = -1; t = setTimeout("hideMenus()",2500) }

function showMsg(menuIndex) { window.status = menuData[menuIndex][2] }

function rollRow(menuIndex,toClass) {
  if(!getElem("menuItem_"+menuIndex,true).isSelected) {
    var parIDs = menuData[menuIndex].parentIDs.split("*")
      for(var i=1;i<parIDs.length-1;++i) {
        if(!N4) { getElem("menuItem_"+parIDs[i],true).className=toClass }
        else { getElem("menuItem_"+parIDs[i],true).bgColor=(toClass=="tableRowColor")?"white":"#EEEEEE" }
	  }
  }
}

function showMenu(menuIndex,e) {
  visMenu = menuIndex
  rollRow(menuIndex,"tableRowColorDark")
  showMsg(menuIndex)
    if((subMenus[menuIndex]!="")&&(e!=null)) {
      hideMenus()
	  var mObj = subMenus[menuIndex]
	    if(subMenus[menuIndex].menuL) { mObj.left=subMenus[menuIndex].menuL;mObj.top=subMenus[menuIndex].menuT }
		else {
		  var mItem=getElem("menuItem_"+menuIndex,true)
          if(e.x&&e.offsetX) { var divLeft=e.x-e.offsetX-5;var divTop=e.y-e.offsetY-3 }
		  else if(mItem.offsetLeft!=null) {
		    var divLeft=0;var divTop=0;var parIDs=menuData[menuIndex].parentIDs.split("*")
			  if(menuData[menuIndex][1]==menuData[0][0]) {
			    divLeft=mItem.offsetLeft;divTop=mItem.offsetTop;
				var mPar=mItem.offsetParent
				  while(mPar) {
				    divLeft+=mPar.offsetLeft;divTop+=mPar.offsetTop;
					mPar=mPar.offsetParent
				  }
			  }
			  else {
			    divLeft=subMenus[parIDs[2]].menuL
				divTop=subMenus[parIDs[2]].menuT
				divTop+=(Math.floor(parseInt(getElem("menuItem_"+menuIndex,true).offsetTop)/menuH)*menuH)
			  }
		  }
	      else if(e.pageX&&e.layerX) { var divLeft=e.pageX-e.layerX-1;var divTop=e.pageY-e.layerY }
	  	  if(divLeft!=null) {
		    var scrollOffset = 0
			  if(document.body.scrollTop) { scrollOffset = document.body.scrollTop; }
			  else if(self.pageYOffset) { scrollOffset = self.pageYOffset; }
		      if(menuData[menuIndex][1]==menuData[0][0]&&topNav) { divLeft+=2;divTop+=scrollOffset+menuH }
			  else if(menuData[menuIndex][1]==menuData[0][0]) { divLeft+=(topMenuW+1);divTop+=scrollOffset }
		      else { divLeft+=menuW+1;divTop+=scrollOffset }
			subMenus[menuIndex].menuL=mObj.left=divLeft
			subMenus[menuIndex].menuT=mObj.top=divTop
	      }
		}
    }
}

function getDiv(id,width,height,left,top,zIndex) {
  if(document.layers) { return '<layer id="'+id+'" position="absolute" width="'+width+'" height="'+height+'" left="'+left+'" top="'+top+'" z-index="'+zIndex+'" bgcolor="white">' }
  else { return '<div id="'+id+'" style="position:absolute;width:'+width+';height:'+height+';left:'+left+';top:'+top+';z-index:'+zIndex+';background-color:white">' }
}
function getDivEnd() { var HTML=document.layers?'</layer>':'</div>';return HTML }

function getMenu(menuID,menuIndex) {
  var HTML = getDiv("DDMenu_"+menuIndex,menuW,menuH,-500,0,1)
    +'<table cellspacing="0" cellpadding="1" border="0"><tr><td class="tableHeading">'
    +'<table cellspacing="0" cellpadding="0" width="'+(menuW-2)+'" border="0">'
	  for(var i=1;i<menuData.length;++i) {
	    if(menuData[i][1]==menuID) {
		  var toURL = menuData[i][3]
		    if(toURL=="" && !hasSubMenu(menuData[i][0])) { 
			  if (menuData[i][4]=='False') {
			    toURL = "static_pages.asp?static_page="+menuData[i][0] 
			  }
			  else {
			  toURL = "download.asp?download="+menuData[i][0] 
			  }
			}
	      toURL = (toURL=="") ? "void(0);refreshAd()" : "toPage(\'"+toURL+"\')"
		  HTML += '<tr><td id="menuItem_'+i+'" class="tableRowColor" height="'+menuH+'"'
		  HTML += document.layers ? '><ilayer><layer id="menuItem_'+i+'" width="'+(menuW-2)+'" height="'+menuH+'"' : ' style="cursor:hand"'
		  HTML += ' onclick="'+toURL+'" onmouseover="showMenu('+i+',event)" onmouseout="delayHideMenu('+i+')">'
		    +'<p><img src="images/filler.gif" border="0" align="right" />&nbsp;<a class="menuItem" href="javascript:'+toURL+'" onmouseover="showMsg('+i+');return true" title="'+menuData[i][2]+'">'+menuData[i][2].replace(re,"\'").replace(re2,"&nbsp;")+'</a>&nbsp;</layer></ilayer></td></tr>'
		}
	  }
  return HTML+'</table></td></tr></table>'+getDivEnd()
}

function getParentIndex(menuIndex) { for(var i=0;i<menuData.length;++i) { if(menuData[i][0]==menuData[menuIndex][1]) { return i } } }
function getParentIDs(menuIndex) {
  visString = "*"+menuIndex
  parIndex = menuIndex
    while(parIndex>0) { parIndex = getParentIndex(parIndex); if(parIndex!=0) { visString += "*"+parIndex } }
  return visString+"*"
}

function drawMenus(curPage) {
  for(i=1;i<menuData.length;++i) {
	menuData[i].parentIDs = getParentIDs(i)
      if(hasSubMenu(menuData[i][0])) { document.write(getMenu(menuData[i][0],i)); subIndexes[i] = i }
	  else { subIndexes[i] = -1 }
  }
  for(var i=0;i<subIndexes.length;++i) { subMenus[i] = (subIndexes[i]==-1) ? "" : getElem("DDMenu_"+subIndexes[i]) }
}