// JavaScript Document
var mmActive='';
var HideTimeOut=600;
var mmHideMenuTimer=false;
var AcertoTop=0;
function MM_clearTimeout() {
	if (mmHideMenuTimer) clearTimeout(mmHideMenuTimer);
	mmHideMenuTimer = null;
	mmDHFlag = false;
}

function MM_startTimeout() {
	if( mmActive.length>0 ) {
		mmStart = new Date();
		mmDHFlag = true;
		mmHideMenuTimer = setTimeout("mmDoHide()",HideTimeOut);
	}
	//alert('mmDoHide');
}

//******************************************************************************

//function showHideDiv2(divID)
//{
//	var PosActualX	=0;
////	var PosActualY	=0;
//	var PosXMax		=0;
//	var PosXMin		=0;
//	var PosY		=0;
//	var screenW 	=0;
//	var screenH 	=0;
//	
//	
//	// vai buscar o tamanho do ecrã
//	if(document.all)
//	{
//		screenW=document.body.clientWidth; // screen.width+255;
//		screenH=document.body.clientHeight; //screen.height;
//	}
//	else
//	{
//		screenW=window.innerWidth;
//		screenH=window.innerHeight;
//		//ScreenWidth=screen.availWidth+265;
//		//ScreenHeight=screen.availHeight;
//	}
//	var mDiv = document.getElementById(divID);
//	
//	// Calcular posMaxY
//	PosY=screenH-(parseInt(mDiv.style.height)+50);
//	//dump("screen Altura ="+screenH+" Div altura:"+mDiv.style.height+": dados\n");
//	//dump("Posicao Y ="+PosY);
//	var wintop=parseInt(window.pageYOffset);
//	var novaPosY=PosY+wintop;
//	mDiv.style.top=novaPosY+'px';
//	PosXMin=0-(screenW+10);
//	mDiv.style.width=(screenW-25)+'px';
//	
//	//******************************************
//	
////	if ((document.getElementById)&&(!document.all)) { //NS6
////		var pos=parseInt(document.getElementById(nom).style.top);
////		var wintop=parseInt(window.pageYOffset);
////		var avail=window.innerHeight;
////	}
////	
////	if (tjs_mode==0) { // toujours en haut
////		var delta=Math.ceil((pos-wintop)/3);
////		if (delta>tjs_max) {delta=tjs_max;}
////		if (delta<-1*tjs_max) {delta=-1*tjs_max;}
////		var top=pos-delta;
////	}
////	if (tjs_mode==1) {// toujours en bas
////		var delta=Math.ceil((pos-(wintop+avail-tjs_hauteur)));
////		if (delta>tjs_max) {delta=tjs_max;}
////		if (delta<-1*tjs_max) {delta=-1*tjs_max;}
////		var top=pos-delta;
////	}
//	//******************************************
//	
//	
//	if(document.getElementById(divID).style.visibility=="hidden")
//	{
//		mDiv.style.left="0" ;//PosXMin;	
//		//dump("\n\n Posicao do Div Left="+mDiv.style.left+" | Top"+mDiv.style.top+"\n\n");
//		document.getElementById(divID).style.visibility="visible";
//		while(mDiv.style.left<0)
//			mDiv.style.left=mDiv.style.left+5;
//	}
//	else
//	{
//		while(mDiv.style.left>PosXMin)
//			mDiv.style.left=mDiv.style.left-5;
//		document.getElementById(divID).style.visibility="hidden";		
//	}
//	
//	//Calcular posXMin
//}

//******************************************************************************
function mmDoShow(id,mnuid)
{
	var newX = findPosX(document.getElementById(mnuid));
	var newY = findPosY(document.getElementById(mnuid));
	var newWidth	=document.getElementById(mnuid).offsetWidth;
	var newHeight	=document.getElementById(mnuid).offsetHeight;
	
//	dump("**** Menu - "+mnuid+" *****\n ");
//	dump("X="+newX+" Y="+newY+"\n");
//	dump("W="+newWidth+" H="+newHeight+"\n");
	//newY=newY-(newHeight);
	if(AcertoTop==0)
		newX=newX+newWidth;
//	dump("Y -"+newHeight+"="+newY+"\n");
//	dump("X +"+newWidth+"="+newX+"\n");
	if(document.all)
	{
		ScreenWidth=document.body.clientWidth+265; // screen.width+255;
		ScreenHeight=document.body.clientHeight; //screen.height;
	}
	else
	{
		ScreenWidth=window.innerWidth+265;
		ScreenHeight=window.innerHeight;
		//ScreenWidth=screen.availWidth+265;
		//ScreenHeight=screen.availHeight;
	}
		
	if(id !=mmActive)
	{
		mmDoHide();
		document.getElementById(id).style.left=newX+'px';//(((ScreenWidth-760)/2));
		document.getElementById(id).style.top= newY +'px'; //mouseY;
		document.getElementById(id).style.visibility='visible';
		mmActive=id;
	}
	else
		document.getElementById(id).style.visibility='visible';
	MM_clearTimeout();
}

function mmDoHide()
{
	if(mmActive.length>0)
	{
		document.getElementById(mmActive).style.visibility='hidden';	
		mmActive="";
		//alert('mmDoHide');
	}
	MM_clearTimeout();
}
function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
    mouseX = event.clientX + document.body.scrollLeft
    mouseY = event.clientY + document.body.scrollTop
  } else {  // grab the x-y pos.s if browser is NS
    mouseX = e.pageX
    mouseY = e.pageY
  }  
  // catch possible negative values in NS4
  if (mouseX < 0){mouseX = 0}
  if (mouseY < 0){mouseY = 0}  
  // show the position values in the form named Show
  // in the text fields named MouseX and MouseY
  return true
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	var printstring = '';
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			printstring += ' element ' + obj.tagName + ' has ' + obj.offsetTop;
//			dump(' element ' + obj.tagName + ' has ' + obj.offsetTop+"\n") ;
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	window.status = printstring;
	return (curtop+AcertoTop);
}
