/*******************************INFOBULLES***************************/
// espacement entre le curseur et l'infobulle
bubble_cursor_padding = 10;

bubble_ie = document.all;
bubble_ns = document.layers;
bubble_fi = document.getElementById && !document.all;

if(!bubble_ie && !bubble_ns && !bubble_fi){
	alert("navigateur "+navigator.appName+" incompatible !");	
}

if(!bubble_ie){
	document.captureEvents(Event.MOUSEMOVE); 	
}

if (document.onmousemove != null)
	alert ('WARNING ! bubble.js : onmousemove deja initialise.');
else
	document.onmousemove = bubble_get_mouse;

// recupere les coordonnees de la souris
// les affecte au style de la div infobulle
page_chargee = false;

function bubble_get_mouse(e){
	if (!page_chargee)
		return;

	if(bubble_ie){
		x = event.clientX + document.documentElement.scrollLeft;
		y = event.clientY + document.documentElement.scrollTop;
		window.status = x;
	}
	else{
		x = e.pageX;
		y = e.pageY;
	}	
	
	bubble = document.getElementById("bubble_infobulle");
	bubble.style.left = x + bubble_cursor_padding +'px';
	
	if(bubble_ie)
		bubble.style.top = y + bubble_cursor_padding - 10+'px';
	else
		bubble.style.top = y + bubble_cursor_padding - 10+'px';
}

// afbubble_fiche la bubble
var bubble_current_img = null;

function see_bubble(idImage){
	bubble = document.getElementById("bubble_infobulle");

	bubble.style.visibility = "visible";
	bubble.style.display = "block";
	bubble_current_img = idImage;
	
	rechargerElement ('bubble_infobulle', 'http://blog.hugel.com/ajax_bubble.php');
}

// cache la bubble
function kill_bubble(){
	bubble = document.getElementById("bubble_infobulle");
	bubble.style.visibility = "hidden";
	bubble.style.display = "none";
	
	bubble.innerHTML = '';
	bubble_current_img = null;
	rechargerElement ('bubble_infobulle', 'http://blog.hugel.com/ajax_bubble.php');
}


function erreurChargement(element)
{
	element.innerHTML += "<br /><span class=\"Styletexte\" style=\"color: red;\">" +
		(langue == "fr" ? "Erreur de chargement" : "Loading error") + "</span>";
}

function evalResponse(idElement)
{
	var scripts = document.getElementById(idElement).getElementsByTagName("script");
	for (var i = 0; i < scripts.length; ++i)
		eval(scripts[i].innerHTML);
}

function getXhr()
{
	var xhr;
	if (window.XMLHttpRequest)
		xhr = new XMLHttpRequest();
	else if (window.ActiveXObject)
	{
		try
		{
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xhr;
}

function rechargerElement(idElement, page)
{
	var xhr = getXhr();
	xhr.onreadystatechange = function()
	{
		try
		{
			if (xhr.readyState == 4)
			{
				if (xhr.status == 200)
				{
					document.getElementById(idElement).innerHTML = xhr.responseText;
					evalResponse(idElement);
				}
				else
					erreurChargement(document.getElementById(idElement).getElementsByTagName("div")[0]);
			}
		}
		catch (e)
		{
			erreurChargement(document.getElementById(idElement).getElementsByTagName("div")[0]);
		}
	}

	xhr.open("GET", page+'?src='+bubble_current_img, true);
	xhr.send(null);
}