var posX = 0;
var posY = 0;

function AffBulle(texte)
{
	var contenu = texte;
	var xOffset = 16;//Déplacement vers la droite
	var yOffset = 16;//Déplacement vers le bas
	var widthMin = 200;
	
	var align = "left";
	var finalPosX = posX + xOffset;
	if(finalPosX < 0)
		finalPosX = 0;
	else if((finalPosX + widthMin) > document.documentElement.clientWidth)
	{
		align = "right";
		finalPosX = document.documentElement.clientWidth - finalPosX;
	}
	
	var valign = "top";
	var finalPosY = posY + yOffset;
	if(finalPosY < 0)
		finalPosY = 0;
	
	
	if(document.getElementById)//Opera, Firefox, Internet Explorer
	{
		document.getElementById("bulle").innerHTML = contenu;
		document.getElementById("bulle").style.display = "block";
		
		//alert("l: "+document.body.clientWidth+" "+document.documentElement.clientWidth+" h: "+window.innerHeight+" "+document.documentElement.clientHeight);
		
		if((finalPosY + document.getElementById('bulle').clientHeight ) > document.documentElement.scrollHeight)
		{
			valign = "bottom";
			finalPosY = document.documentElement.clientHeight - finalPosY + yOffset * 2;
		}
		
		if((finalPosY + document.getElementById('bulle').clientHeight ) > ( document.documentElement.scrollTop + document.documentElement.clientHeight ) )
		{
			valign = "bottom";
			finalPosY =  document.documentElement.clientHeight - finalPosY + yOffset * 2;
		}
		
		if(valign == "top")
		{
			document.getElementById("bulle").style.top = finalPosY+"px";
			document.getElementById("bulle").style.bottom = "";
		}
		else
		{
			document.getElementById("bulle").style.top = "";
			document.getElementById("bulle").style.bottom = finalPosY+"px";
		}
		
		if(align == "left")
		{
			document.getElementById("bulle").style.left = finalPosX+"px";
			document.getElementById("bulle").style.right = "";
		}
		else
		{
			document.getElementById("bulle").style.left = "";
			document.getElementById("bulle").style.right = finalPosX+"px";
		}
	}
	else if(document.all)// Internet Explorer
	{
		bulle.innerHTML=contenu;
		document.all["bulle"].style.display = "block";
		
		if((finalPosY + document.getElementById('bulle').clientHeight ) > document.documentElement.scrollHeight)
		{
			valign = "bottom";
			finalPosY = document.documentElement.clientHeight - finalPosY + yOffset * 2;
		}
		
		if((finalPosY + document.getElementById('bulle').clientHeight ) > ( document.documentElement.scrollTop + document.documentElement.clientHeight ) )
		{
			valign = "bottom";
			finalPosY =  document.documentElement.clientHeight - finalPosY + yOffset * 2;
		}
		
		if(valign == "top")
		{
			document.all["bulle"].style.top = finalPosY;
			document.all["bulle"].style.bottom = "";
		}
		else
		{
			document.all["bulle"].style.top = "";
			document.all["bulle"].style.bottom = finalPosY;
		}
		
		if(align == "left")
		{
			document.all["bulle"].style.left = finalPosX;
			document.all["bulle"].style.right = "";
		}
		else
		{
			document.all["bulle"].style.left = "";
			document.all["bulle"].style.right = finalPosX;
		}
	}
	if(document.layers)// Netscape
	{
		document.layers["bulle"].document.write(contenu);
		document.layers["bulle"].document.close();
		document.layers["bulle"].top = finalPosY;
		document.layers["bulle"].left = finalPosX;
		document.layers["bulle"].visibility = "show";
	}
}

/*function getMousePos(e)
{
	if(document.all)
	{
		
		posX = event.x + document.documentElement.scrollLeft;
		posY = event.y + document.documentElement.scrollTop;
	}
	else
	{
		posX = e.pageX;
		posY = e.pageY;
	}
	document.getElementById('x').innerHTML = posX;
	document.getElementById('y').innerHTML = posY;

}*/

function getMousePos(event)
{
	var e = event || window.event;
	var scroll = new Array(
			(document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft,
			(document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop
		);
	
	posX = e.clientX + scroll[0] - document.body.clientLeft;
	posY = e.clientY + scroll[1] - document.body.clientTop;
	
	return new Array(e.clientX + scroll[0] - document.body.clientLeft, e.clientY + scroll[1] - document.body.clientTop);
}

function HideBulle()
{
	if(document.all)
		document.all["bulle"].style.display = "none";
	else if(document.getElementById)
		document.getElementById("bulle").style.display = "none";
}

function InitBulle()
{
	if(document.getElementById)
	{
	        document.onmousemove = getMousePos;
	        document.write("<div id='bulle' onclick='HideBulle()' ></div>");
	}
	else if(document.all)
	{
		document.onmousemove = getMousePos;
		document.write("<div id='bulle' onclick='HideBulle()' ></div>");
	}
	else if (document.layers)
	{
		window.captureEvents(Event.MOUSEMOVE);
		window.onMouseMove = getMousePos;
		document.write("<layer name='bulle' top=0 left=0 visibility='hide' onclick='HideBulle()' ></layer>");
	}
}

InitBulle();