function getPos(el) {
    // yay readability
    for (var lx=0, ly=0;
         el != null;
         lx += el.offsetLeft, ly += el.offsetTop, el = el.offsetParent);
    return {x: lx,y: ly};
}

function menu_toggle(id, subtop) {
	obj=document.getElementById(id);
	top_obj=document.getElementById(subtop);
	
	obj.style.left=getPos(top_obj).x-10;
	
	if (obj.style.display=="none")
		obj.style.display="block"
	else
		obj.style.display="none";
}

function _switch(id, spanobj) {
	var x=document.getElementsByTagName("div");
	var lvl=document.getElementById(id).getAttribute('level');
	
	for(var i=0;i<x.length;i++) { 
		if (((x[i].id.substr(0,8)=="lsubmenu") || (x[i].id.substr(0,8)=="tsubmenu")) && (x[i].id!=id)) {
			x_lvl=x[i].getAttribute('level');
			if (x_lvl>=lvl) {
				x[i].style.display='none';
				var span=document.getElementById('tsubmain'+x[i].id.substr(8,3));
				if (span!=null) span.className='tsubmain';
			}
		}
	}
	
	if (document.getElementById(id).style.display=='none') {
		document.getElementById(id).style.display='block';
		if (spanobj!==undefined) spanobj.className='tsubmain_open';
	} else {
		document.getElementById(id).style.display='none';
		if (spanobj!==undefined) spanobj.className='tsubmain';
	}
}

