function getById(str)
{	var vobj;
	try{vobj=document.getElementById(str);}
	catch (err) //made for compatibility with iPAQ 
	{eval("vobj = document."+str+";");}
	return vobj;
}

function getXY(el)/*
{
	var pos={x:0,y:0};
	if((el.parentNode===null||el.offsetParent===null||el.style.display=='none')&&el!=document.body)
		return pos;
	var parentNode=null;
	var box;
	if(el.getBoundingClientRect)
	{
		box=el.getBoundingClientRect();
		var doc=document;
		/*if(!inDocument(el)&&parent.document!=document)
		{
			doc=parent.document;
			if(!this.isAncestor(doc.documentElement,el))
				return pos;
		}* /
		var scrollTop=Math.max(doc.documentElement.scrollTop,doc.body.scrollTop);
		var scrollLeft=Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft);
		return{x:box.left+scrollLeft,y:box.top+scrollTop};
	}
	else
	{
		pos={x:el.offsetLeft,y:el.offsetTop};
		parentNode=el.offsetParent;
		var hasAbs=el.style.position=='absolute';
		if(parentNode!=el)
		{
			while(parentNode)
			{
				pos.x+=parentNode.offsetLeft;
				pos.y+=parentNode.offsetTop;
				parentNode=parentNode.offsetParent;
			}
		}
	}
	parentNode=el.parentNode;
	while(parentNode.tagName&&!(parentNode==document.body))
	{
		if(parentNode.style.display!='inline')
		{
			pos.x-=parentNode.scrollLeft;
			pos.y-=parentNode.scrollTop;
		}
		parentNode=parentNode.parentNode;
	}
	return pos;
}*/
{
	    var x = 0, y = 0;
	    var tmpel = el;
	    while (tmpel && tmpel != document.body) {
	        if (tmpel.scrollLeft) {
	            x-= tmpel.scrollLeft;
	        }
	        if (tmpel.scrollTop && !(window.opera && tmpel.tagName=="TR")) {
    	        y-= tmpel.scrollTop;
        	}
	        tmpel = tmpel.parentNode;
	    }
	    tmpel = el;
	    while (tmpel) {
			y += tmpel.offsetTop;
	        x += tmpel.offsetLeft;
	        if (tmpel != el && tmpel.clientLeft &&
	            tmpel.nodeName != "TABLE") {
	            x += tmpel.clientLeft;
	        }
			 if (tmpel != el && tmpel.clientTop &&
         	   tmpel.nodeName != "TABLE") {
            	y += tmpel.clientTop;
	        }
	        tmpel = tmpel.offsetParent;
	    }
	    if (!el.offsetParent && el.x) {
	        x += el.x;
	    }
	    if (!el.offsetParent && el.y) {
	        y += el.y;
    	}
    	return {x:x,y:y};
	}
//--------------------------------------------------------------------------------------------
// menu functions
function showSubMenu(a, num){
	var div = getById("id_div_submenu_"+num);
	if(div){
		div.style.top = getXY(a).y;
		div.style.left = getXY(getById("id_td_content")).x - 3;
		div.style.display="block";
		div.is_shown=1;
	}
}
function hideSubMenu(a, num){
	outSubmenu(getById("id_div_submenu_"+num));
}
function hoverSubmenu(div){
	div.is_shown++;
}
function outSubmenu(div){
	div.is_shown--;
	if(div.is_shown==0)
		setTimeout("removeSubmenu('"+div.id+"');",100);
}
function removeSubmenu(str){
	var div = getById(str);
	if(div.is_shown==0)
		div.style.display ="none";
}
//--------------------------------------------------------------------------------------------
// show / hide
function showHide(id){
	getById(id).style.display = (getById(id).style.display =="none")?"block":"none";
}
function show(id) {
	getById(id).style.display = "block";
}
function hide(id) {
	getById(id).style.display = "none";
}

