/**
---------------------------------------------------------------------------------------------
        EplosNET 3.0.0 PHP keretrendszer 2001-2006
        Baldaszti Zoltán - mail: baldaszti.zoltan@proaction.hu
---------------------------------------------------------------------------------------------
        Javascript dinamikus menü
	Használata:
	kell csinálni minden menünek egy DIV-et, aminek az id-je "menu_X", stílusa
	position:absolute;z-index:999;display:none;
	ezután a főmenü elemének meg kell adni az eseménykezelőt:
	onmouseover='openmenu(this,'X',0,0);'
	ahol a "this" kötelező, "X" az adott menüpont id-jének X-e, a két szám pedig
	azt jelenti, hogy mennyire tolja el az almenüt a főmenühöz képest
---------------------------------------------------------------------------------------------
*/

/*PUBLIC*/
var menutimeout=1000;	//mennyi ideig maradjon kint a menü, mikrosec-ben (1000=1mp)
var changeimage=false;	//cserélje-e a menü képet (x.gif <-> x_active.gif)

/*PRIVATE*/
var menutmr=null;
var currentmenuobj;
var currentmenu='';
var dontclosemenu=false;

function openmenu(menuobj,id,deltax,deltay)
{
	var obj,oldobj=menuobj,i;
        var curleft = 0;
        var curtop = 0;
	if(menutmr!=null) clearTimeout(menutmr);
	if(changeimage && currentmenuobj!=null) currentmenuobj.src=currentmenuobj.src.replace("_active.gif",".gif");
	obj=document.getElementById('menu_'+currentmenu);
	if(obj!=null) obj.style.display='none';
	obj=document.getElementById('menu_'+id);
	if(obj!=null) {
		currentmenuobj=menuobj;
		obj.style.display='block';
		if (menuobj.offsetParent) {
			while (menuobj.offsetParent) {                                                                                                       
				curleft += menuobj.offsetLeft;                                                                       
				curtop += menuobj.offsetTop;
				menuobj = menuobj.offsetParent;
   	        }
        } else {
			if (menuobj.x) curleft = menuobj.x;
			if (menuobj.y) curtop = menuobj.y;
		}
		menuobj=oldobj;
		obj.style.top=Math.round(curtop+deltay)+'px';
		obj.style.left=Math.round(curleft+deltax)+'px';
		obj.onmouseover=menu_over;
		obj.onmouseout=menu_out;
		oldobj.onmouseout=menu_out;
		if(changeimage) oldobj.src=oldobj.src.replace(".gif","_active.gif").replace("_active_active","_active");
		currentmenu=id;
		dontclosemenu=true;
		menutmr=setTimeout('closemenu();',menutimeout);
	}
}
function menu_over(){dontclosemenu=true;};
function menu_out(){ dontclosemenu=false;if(menutmr==null)menutmr=setTimeout('closemenu();',menutimeout);};

function closemenu()
{
	var obj,i;
	if(dontclosemenu) menutmr=setTimeout('closemenu();',menutimeout);
	else {
		if(changeimage && currentmenuobj!=null) currentmenuobj.src=currentmenuobj.src.replace("_down.gif",".gif");
		obj=document.getElementById('menu_'+currentmenu);
		if(obj!=null) obj.style.display='none';
		currentmenu=0;
		currentmenuobj=null;
		menutmr=null;
	}
}

