var checkOutTimeout;
var tree=new Array;
var subMenu=new Object;
subMenu.id='';
subMenu.parent='';
subMenu.lastTimeout='';
subMenu.out=false;

function display(idShow,parent,main){
//la fiecare mouseover se anuleaza timeout-ul pt ascundere toate optiunile deschise
clearTimeout(checkOutTimeout);


e1=document.getElementById('menu_'+idShow);

//daca parintele optiunii selectate curent este diferit de anteriorul acesteia, ultimul submeniu este ascuns
if (parent.parentNode.id!=subMenu.parent && subMenu.parent!='')
			document.getElementById(subMenu.id).style.display='none';

//la mouseover se seteaza true (adica pozitia curosrului este pe meniu)
subMenu.out=true;
			
if (e1!=null){
			subMenu.id='menu_'+idShow;
			subMenu.parent=e1.id;
			
			if (main==0){
					e1.style.left=getAbsoluteLeft(parent.id)+160+'px';
					e1.style.top=getAbsoluteTop(parent.id)+'px';
					}
			else{
						e1.style.left=(getAbsoluteLeft(parent.id)+160)+'px';
						e1.style.top=getAbsoluteTop(parent.id)+'px';
					}
			e1.style.display='block';
			subMenu.lastTimeout=setTimeout('autoHide(\''+e1.id+'\')',3000); //ascundere automata a optiunii deschise
		}
		else{
		//reset value if no child div exists
			subMenu.id='';
			subMenu.parent='';
			subMenu.lastTimeout='';
		}
}

function addNew(id){
var tmp;
test=in_array(id);
if (test<0){
		tree[tree.length]=id;
		}
else{
		for (i in tree){
				if (tree[i]==id) tmp=i+1;
				if (i>=tmp)
						document.getElementById(tree[i]).style.display='none';
				}
		tree.length=tmp;
		}
}

function in_array(id){
for (i in tree){
		if (tree[i]==id) return i;
		}
return -1;
}

function mouseOut(e){
//e.style.background='#999999';
clearTimeout(subMenu.lastTimeout);
subMenu.out=false;
checkOutTimeout=setTimeout('checkOut('+tree.length+')',500);
}

//ascunde toate div urile deschise daca se iese cu mouse ul din meniu
function checkOut(){
var obj;
//doar daca mouse ul nu mai este in meniu se ascund toate optiunile deschise
if (subMenu.out==false){
		for (i in tree){
					if (i>0) 
							document.getElementById(tree[i]).style.display='none';
		}
	}
if (subMenu.parent!='') 
				document.getElementById(subMenu.parent).style.display='none';
}

//ascunde div deschis dupa un anumit timp;
function autoHide(id){
document.getElementById(id).style.display='none';
openedDiv='';
}

function getAbsoluteLeft(objectId) {
	o = document.getElementById(objectId);
	oLeft = o.offsetLeft;            // Get left position from the parent object
	while(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent;    // Get parent object reference
		oLeft += oParent.offsetLeft; // Add parent left position
		o = oParent;
	}
	return oLeft;
}
		
function getAbsoluteTop(objectId) {
	o = document.getElementById(objectId);
	oTop = o.offsetTop;            // Get top position from the parent object
	while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
		oParent = o.offsetParent;  // Get parent object reference
		oTop += oParent.offsetTop; // Add parent top position
		o = oParent;
	}
	return oTop;
}
