/**
  * onITmenu (drop-down menu)
  * onITmenu uses the Cross-Browser DHTML API CBE 4. For more informations about CBE look at http://cross-browser.com
  * Things that are posibble with this script:
  *  - Small drop-down menus with max-depth of 1. (no sub-sub-menus)
  *  - Sub-menus in HTML-Code, not generated.
  * @version  1.0.1 (restart.tc adaption)
  * @author   Thomas Seifried atomas@detonation.org
  * @license  GPL
  * @usage    All Items are divs or spans and position:absolute.
  *           ids of menupoint divs are freely chooseable
  *           ids of the submenu divs must be named like <menupointid>_drop. eg.: menu1_drop
  *           All menupoint ids (not submenu) that should have a drop-down menu have to be in the menuarray (see windowOnload)
 */
var menuarray = new Array(); // array of all menu-ids
var current; // current open drop-down menu (cbe object)
var currentmenu;  //current menupoint (cbe object)
var sel;

function initDropper(){
      document.cbe.addEventListener('mouseMove',mouseMoveListener);
      for(i=0;i<menuarray.length;i++){
      mid=menuarray[i];
      cbeGetElementById(mid).cbe.addEventListener('mouseOver',mouseOverListener);
   }
}

function mouseOverListener(e){
   if(!(e.currentTarget.cbe==currentmenu)){
      currentmenu=e.currentTarget.cbe;
      if(current)current.hide();
      current=cbeGetElementById(currentmenu.id+"_drop").cbe;
      current.show();
      HideSelects(undefined, current.pageX(), current.pageY(), current.width(), current.height(), 0);
   }
}

function mouseMoveListener(e){
   var x=e.pageX;
   var y=e.pageY;
   if(currentmenu && current){
      if(!currentmenu.contains(x,y) &&  !current.contains(x,y,-2,0,-6,0)){
         if(!is.konq || !current.contains(x,y,0,0,konquerorbug,0)){
            HideSelects(undefined, 0, 0, 0, 0, 0);
            current.hide();
            current=0;
            currentmenu=0;
         }
      }
   }
}

function HideSelects(pm,x,y,w,h,l){
	if(is.ie) {
		var selx,sely,selw,selh,i,scrolltop
		scrolltop = document.getElementById("content").scrollTop;
		if(!sel) sel = document.getElementsByTagName("SELECT");
		for(i=0;i<sel.length;i++){
			selx=0; sely=0; var selp;
			if(sel[i].offsetParent){
				selp=sel[i];
				while(selp.offsetParent){
					selp=selp.offsetParent;
					selx+=selp.offsetLeft;
					sely+=selp.offsetTop;
				}
			}
			selx+=sel[i].offsetLeft;
			sely+=sel[i].offsetTop;
			sely-=scrolltop;
			selw=sel[i].offsetWidth;
			selh=sel[i].offsetHeight;
			if(selx+selw>x && selx<x+w && sely+selh>y && sely<y+h){

				if(sel[i].style.visibility!="hidden"){
					sel[i].level=l;
					sel[i].style.visibility="hidden";
					if(pm){
						if(!pm.mout)
							pm.mout="";
						pm.mout+=this.name+".sel["+i+"].style.visibility='visible';"
					}
				}
			}else
				if(l<=sel[i].level && !(pm&&l==0))
					sel[i].style.visibility="visible"
		}
	}
}