<!--
/********************************************************
** Change the following values to what you need
*********************************************************/
/* offsets are pixel spacing help for the menus they are in groups of 2 (ie&others) and 
** are in the following order: first sub left ie, first sub left other, first sub top ie,
** first sub top other, subsiquent subs left ie, subsiquent subs left other, 
** subsiquent subs top ie, subsiquent subs top other.
*/
var offset1=new Array(-5,0,4,6,-20,-20,2,2);

/* Inside the init() function, place your addHandlers statments. The arguments for 
** addHanders are NAME OF PARENT DIV TAG, Menu style (currently, topMenu and leftMenu
** are supported), and the offset array to use. If you don't supply an offset, it
** defaults to all zeros. If you don't supply a Menu Style, it defaults to topMenu
** You should be able to have as many menus as you want on a page. You'll just need
** the stylesheets for each of them.
*/
function init(){
 addHanders("menus","topMenu","offset1");
}

/***********************************************************
** You shouldn't ever need to mess with anything below here
************************************************************/

var agt=navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);

var is_nav  = ((agt.indexOf('mozilla')!=-1) 
	&& (agt.indexOf('spoofer')==-1) 
	&& (agt.indexOf('compatible') == -1) 
	&& (agt.indexOf('opera')==-1) 
	&& (agt.indexOf('webtv')==-1));
var is_nav5up = (is_nav && (is_major >= 5));

var is_ie   = (agt.indexOf("msie") != -1);
var is_ie3  = (is_ie && (is_major < 4));
var is_ie4  = (is_ie && (is_major == 4) && (agt.indexOf("msie 4")>-1) );
var is_ie5up  = (is_ie  && !is_ie3 && !is_ie4);

var is_5up = ((is_ie5up) || (is_nav5up));

var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
var is_mac    = (agt.indexOf("mac")!=-1);


function popImage(img,w,h){
 var imageWin=window.open("image.php?img="+img,"imageWin","width="+w+",height="+h+",status=no,resizable=no");
}

function addHanders(myMenu,menuType,offsets){
 if(is_5up){
  if(!offsets){offsets=defOffsets;}
  var myDIV = window.document.getElementsByTagName("div");
  var myDIVLI = myDIV[myMenu].getElementsByTagName("li");
  for(var i=0;i<myDIVLI.length;i++){
   for(var j=0;j<myDIVLI[i].childNodes.length;j++){
    if(myDIVLI[i].childNodes[j].tagName=="UL"){
     switch(menuType){
      case 'topMenu':
       topMenuSet(myDIVLI[i],myDIVLI[i].childNodes[j],offsets,myMenu);
	   break;
      case 'leftMenu':
       leftMenuSet(myDIVLI[i],myDIVLI[i].childNodes[j],offsets,myMenu);
	   break;
      default:
       topMenuSet(myDIVLI[i],myDIVLI[i].childNodes[j],offsets,myMenu);
	   break;
     }
    // myDIVLI[i].childNodes[j].style.visibility='hidden';
     myDIVLI[i].onmouseover=function(e){
      for(var k=0;k<this.childNodes.length;k++){
       if(this.childNodes[k].tagName=="UL"){
        if(this.childNodes[0].className!=''){
		 myStyle=getStyle(myMenu,this.childNodes[0].tagName.toLowerCase()+'.'+this.childNodes[0].className+'over');
		}else if(this.parentNode.parentNode.id==myMenu){
		 myStyle=getStyle(myMenu,'a.topover');
		}else{
		 myStyle=getStyle(myMenu,'a.subover');
		}
		this.childNodes[0].style.color=myStyle.color;
		this.childNodes[0].style.background=myStyle.background;
		this.childNodes[k].style.visibility='visible';
       }
      }
      return false;
     }
     myDIVLI[i].onmouseout=function(e){
     /* thanks to Netscape Devedge for this part! */
      var relatedTarget = null;
      if (e){
       relatedTarget = e.relatedTarget;
       // work around Gecko Linux only bug where related target is null when clicking on menu links or when right clicking and moving into a context menu.
       //if (navigator.product == 'Gecko' && navigator.platform.indexOf('Linux') != -1 && !relatedTarget){relatedTarget = e.originalTarget;}
      }else if (window.event){
       relatedTarget = window.event.toElement;
      }
      if (elementContains(this, relatedTarget)){return false;}
      /* END netscape code */
      for(var k=0;k<this.childNodes.length;k++){
       if(this.childNodes[k].tagName=="UL"){
        if(this.childNodes[0].className!=''){
		 myStyle=getStyle(myMenu,this.childNodes[0].tagName.toLowerCase()+'.'+this.childNodes[0].className+'out');
		}else if(this.parentNode.parentNode.id==myMenu){
		 myStyle=getStyle(myMenu,'a.topout');
		}else{
		 myStyle=getStyle(myMenu,'a.subout');
		}
		this.childNodes[0].style.color=myStyle.color;
		this.childNodes[0].style.background=myStyle.background;
		this.childNodes[k].style.visibility='hidden';
       }
      }
      return false;
     }
    }
   }
  }
 }
}


function elementContains(elmOuter, elmInner){
 while (elmInner && elmInner != elmOuter){elmInner = elmInner.parentNode;}
 if (elmInner == elmOuter){return true;}
 return false;
}

function topMenuSet(parent,child,offsets,myMenu){
 var myOffsets=eval(offsets);
 if(parent.parentNode.parentNode.id==myMenu){
  child.style.left=(is_ie5up)?parent.offsetLeft+parseInt(myOffsets[0])+"px":parent.offsetLeft+parseInt(myOffsets[1])+"px";
  child.style.top=(is_ie5up)?parent.offsetHeight+parseInt(myOffsets[2])+"px":parent.offsetHeight+parseInt(myOffsets[3])+"px";
  var myStyle='.top';
 }else{
  child.style.left=(is_ie5up)?parent.parentNode.clientWidth+parseInt(myOffsets[4])+"px":parent.offsetLeft+parent.offsetWidth+parseInt(myOffsets[5])+"px";
  child.style.top=(is_ie5up)?parent.offsetTop+parseInt(myOffsets[6])+"px":parent.offsetTop+parseInt(myOffsets[7])+"px";
  myStyle='.sub';
 }/*
 if(parent.childNodes[0].className!=''){
  myStyle=getStyle(myMenu,parent.childNodes[0].tagName.toLowerCase()+'.'+parent.childNodes[0].className+'out');
 }*/
 parent.childNodes[0].style.className=myMenu+" a"+myStyle;
 if(parent.childNodes[0].className!=''){
  myStyle=getStyle(myMenu,parent.childNodes[0].tagName.toLowerCase()+'.'+parent.childNodes[0].className+'out');
 }else if(parent.parentNode.parentNode.tagName=="DIV"){
  myStyle=getStyle(myMenu,'a.topout');
 }else{
  myStyle=getStyle(myMenu,'a.subout');
 }
 parent.childNodes[0].style.color=myStyle.color;
 parent.childNodes[0].style.background=myStyle.background;
}

function leftMenuSet(parent,child,offsets,myMenu){
 myOffsets=eval(offsets);
 if(parent.parentNode.parentNode.id==myMenu){
  child.left=(is_ie5up)?parent.parentNode.clientWidth+parseInt(myOffsets[0])+"px":parent.offsetLeft+parent.offsetWidth+parseInt(myOffsets[1])+"px";
  child.top=(is_ie5up)?0+parseInt(myOffsets[2])+"px":0+parseInt(myOffsets[3])+"px";
 }else{
  child.left=(is_ie5up)?parent.parentNode.clientWidth+parseInt(myOffsets[4])+"px":parent.offsetLeft+parent.offsetWidth+parseInt(myOffsets[5])+"px";
  child.top=(is_ie5up)?0+parseInt(myOffsets[6])+"px":0+parseInt(myOffsets[7])+"px";
 }
}

function getStyle(myMenu,className){
 var mySheet=document.styleSheets;
 var myClassName="div."+myMenu+" "+className;
 myClassName=myClassName.toLowerCase();
 if(is_ie5up){
  for(l=0;l<mySheet.length;l++){
   for (m=0;m<mySheet[l].rules.length;m++){
    tempSheet=mySheet[l].rules[m].selectorText.toLowerCase();
    if(tempSheet.indexOf(myClassName)>-1){
     return mySheet[l].rules[m].style;
    }
   }
  }
// }else if(is_nav5up){
 }else{
  for(var l=0;l<mySheet.length;l++){
   for(var m=0;m<mySheet[l].cssRules.length;m++){
    var tempSheet=mySheet[l].cssRules[m].selectorText.toLowerCase();
    if(tempSheet.indexOf(myClassName)>-1){
     return mySheet[l].cssRules[m].style;
    }
   }
  }
 }
}

var defOffsets=new Array(0,0,0,0,0,0,0,0);

//for finding object properties. I use this to find DOM structures while testing
function show_props(obj, obj_name) {
   var result = ""
   for (var i in obj)
      //result += obj_name + "." + i + "<Br>\n"
      result += obj_name + "." + i + " = |" + obj[i] + "|<br>\n"
   return result
}

window.onload=init;
//-->