var menus=1;
var cMenu=-1;
var levels=3;
var pTimeout = 1;
var pTimeoutTime = 500; 
var lTimeout=new Array(levels);
var lActive=new Array(levels);
var lMenu="";
var lFly="";
var flyShow=false;
var fading=false;
var flySubMenuTop=260;

function menuInit() {
	for(i=1;i<=menus;i++) {
		if(document.getElementById("menu"+i))if(document.getElementById("menu"+i).className=="menuHi"){cMenu=i;i=menus;}
	}
	if (document.getElementById("flysubmenu")){
		window.onresize = flySubMenuFix;
		window.onscroll = flySubMenuPosition;
		flySubMenuFix();
	}
}

function flySubMenuFix() {
	var df = document.getElementById("flysubmenu");
	df.style.left = document.getElementById("main").offsetLeft + 15;
	flySubMenuTop=df.offsetTop;
}

function flySubMenuPosition() {
	var df = document.getElementById("flysubmenu");
	df.style.top = document.body.scrollTop + flySubMenuTop;
}

function setOpacity(el,n) {
	n=(n==100)?99.999:n;
	el.style.opacity=n/100;
	el.style.MozOpacity=n/100;
  	el.style.KHTMLOpacity=n/100;
	el.style.filter="alpha(opacity="+n+")";
}

function fadeIn(objId,opacity,vmax) {
  if(!vmax)vmax=100;
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity <= vmax) {
      setOpacity(obj, opacity);
      opacity += 50;
      window.setTimeout("fadeIn('"+objId+"',"+opacity+","+vmax+")", 20);
    }
	else {fading=false;}
  }
}
function fadeOut(objId,opacity,sp) {
  if(!sp)sp=20;
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity > 0) {
      setOpacity(obj, opacity);
      opacity -= 50;
      window.setTimeout("fadeOut('"+objId+"',"+opacity+","+sp+")", sp);
    }
	else {
		obj.style.display="none";
		fading=false;
	}
  }
}

function setMenu(mNr) {
	inNav(2);
	other=true;
	for(i=1;i<=menus;i++) {
		if (document.getElementById("submenu"+i)) {
			if(document.getElementById("submenu"+i).style.display=="block") {
				if(i==mNr) other=false;
				else hideMenu(i);
			}
		}
		else if(document.getElementById("menu"+i))if(i!=cMenu&&i!=mNr) document.getElementById("menu"+i).className="menu";
	}
	if(other){
		if(document.getElementById("menu"+mNr))if(document.getElementById("menu"+mNr).className!='menuHi')document.getElementById("menu"+mNr).className="menuOver";
		showMenu(mNr);
	}
}

function showMenu(mNr){
	var mm = document.getElementById("menu"+mNr);
	var sm = document.getElementById("submenu"+mNr);
	var sh = document.getElementById("submenushadow"+mNr);
	var fm = document.getElementById("flymenu");
	var fs = document.getElementById("flymenushadow");
	var tm = document.getElementById("main").offsetLeft;
	if (sm) {
		sm.style.left = mm.offsetLeft+tm;
		sh.style.left = sm.style.left;
		sm.style.top = mm.offsetTop+mm.offsetHeight+88;
		sh.style.top = mm.offsetTop+mm.offsetHeight+88;
		fm.style.top = mm.offsetTop+mm.offsetHeight+88;
		fs.style.top = mm.offsetTop+mm.offsetHeight+88;
		sh.style.height = parseInt(document.body.clientHeight) - parseInt(sh.style.top) + parseInt(document.body.scrollTop);
		fs.style.height = sh.style.height; //parseInt(document.body.clientHeight) - parseInt(fs.style.top) - 1;
		sm.style.display="block";
		sh.style.display="block";
		fadeIn("submenu"+mNr,0);
		fadeIn("submenushadow"+mNr,0,60);
	}
	else fading=false;
}

function hideMenu(i) {
if(i>0) {
	if (document.getElementById("submenu"+i)) {
  		fading=true;
		hideFlyOut();
		clearTimeout(lTimeout[1]);
		fadeOut("submenushadow"+i,50);
		fadeOut("submenu"+i,100);
	}
	if(i!=cMenu)window.setTimeout('document.getElementById("menu'+i+'").className="menu";',300);
	lActive[0]=-1;
	resetMenu();
}	
}

function resetMenu(){
	if(lMenu.length==2)lo(lMenu);
}
function resetFlyOut(){
	if(lFly.length>2)lo(lFly);
}

function hideFlyOut() {
	flyShow=false;
	resetFlyOut();
	clearTimeout(lTimeout[2]);
	var d1=document.getElementById("flymenu");
	var d2=document.getElementById("flymenushadow");
	d1.style.display="none";
	d2.style.display="none";
	lFly="";
	lActive[1]=-1;
}

function showFlyOut(lPos) {
	var d1=document.getElementById("flymenu");
	var d2=document.getElementById("flymenushadow");
	clearTimeout(lTimeout[2]);
	d1.style.left=lPos;
	d2.style.left=d1.style.left;
	d1.style.display="block";
	d2.style.display="block";
	flyShow=true;
}

function inNav(ml) {
	for(i=0;i<=ml;i++){clearTimeout(lTimeout[i])};
}

function hi(el) {
	if(document.getElementById(el).className.indexOf("_hi")==-1)document.getElementById(el).className+="_hi";
}
function lo(el) {
	document.getElementById(el).className=document.getElementById(el).className.replace('_hi','');
}

function inFlyNav(l,el) {
	if(!fading){
		old=lActive[0]+""+lActive[1];
		inNav(2);
		var d1=document.getElementById("flymenu");
		var d2=document.getElementById("flymenushadow");
		if(lMenu!=l+''+el){
			if(d1){
				r=document.getElementById("submenu"+l);
				var p=r.offsetLeft+r.offsetWidth+1;
				lFly="";
				if(document.getElementById(l+''+el).className.indexOf("submenu")>-1) {
					d1.innerHTML=document.getElementById("products"+l+el).innerHTML;
					if(d1.style.display!="block") showFlyOut(p);
				}
				else hideFlyOut();
				hi(l+''+el);
				resetMenu();
			}
			lActive[0]=l;
			lActive[1]=el;
		}
		else if(flyShow==false&&document.getElementById(l+''+el).className.indexOf("submenu")>-1){
			d1.innerHTML=document.getElementById("products"+l+el).innerHTML;
			r=document.getElementById("submenu"+l);
			var p=r.offsetLeft+r.offsetWidth+1;
			showFlyOut(p);
		}
		else if(el!=lActive[1]) {
			lActive[1]=el;
			fadeIn("flymenu",100);
			if(document.getElementById(l+''+el).className.indexOf("submenu")>-1) {
				d1.innerHTML=document.getElementById("products"+l+el).innerHTML;
				d2.innerHTML=d1.innerHTML;
			}
			hi(l+''+el);
			if(old.length==2){
				lo(old);
			}
		}
		lMenu=l+''+el;
	}
}

function inItem(l,el,it) {
	if(!fading){
		inNav(3);
		me=l+''+el+''+it;
		if(lFly!=me) {
			hi(me);
			resetFlyOut();
		}
		lFly=me;
	}
}

function outNav(mNr,ml) {
	if(!ml)ml=1;
	for(i=ml;i>0;i--){
		switch(i){
			case 0:break;
			case 1:lTimeout[i]=window.setTimeout("hideMenu("+mNr+");",pTimeoutTime);break;
			case 2:lTimeout[i]=window.setTimeout("hideFlyOut();",pTimeoutTime);break;
		}
	}
}

function go(url) {
	window.location=url;
}
