
// Décalage en pixels, à droite du curseur, utilisé pour l'affichage de la popup
var offsetx = 9;
	
// Décalage en pixels, en dessous du curseur, utilisé pour l'affichage de la popup
var offsety = 5;

// Compatibilité du browser: Netscape? IE? ...
bNetscape4 = false;
bMozilla   = false;
bIE4       = false;

bNetscape4 = (document.layers)? true:false;
if (!bNetscape4)
{
  bIE4 = (document.all)? true:false;
  
  if (!bIE4)
    {
      bMozilla = (document.getElementById)?true:false;
    }
}

// Tests complémentaires pour IE
if (bIE4) {
  if (navigator.userAgent.indexOf('MSIE 5')>0) {
    bIE5 = true;
  } else {
    bIE5 = false; }
} else {
  bIE5 = false;
}

// Définition de quelques variables locales
var x = 0;
var y = 0;
var snow = 0;
var sw = 0;
var cnt = 0;
var dir = 1;

if ( (bNetscape4) || (bIE4) ) {
  if (bNetscape4) over = document.overDiv;
  if (bIE4) over = overDiv.style;
  document.onmousemove = mouseMove;
  if (bNetscape4) document.captureEvents(Event.MOUSEMOVE);
}

if (bMozilla) {
  over = document.getElementById("overDiv");
  document.onmousemove = mouseMove;
}

// Clears popups if appropriate
function nd() {
	if ( cnt >= 1 ) { sw = 0 };
	if ( (bNetscape4) || (bIE4) || (bMozilla)) {
		if ( sw == 0 ) {
			snow = 0;
			hideObject(over);
		} else {
			cnt++;
		}
	}
}

// ================================================================
// DisplayPopup: Fonction permettant d'afficher une popup lors du
//               passage de la souris sur un icone.
// => La fenetre contient les infos relatives aux hotels presents
// dans la ville: nom de l'hotel, de la ville, classification ..
// ================================================================ 
function DisplayPopup(text, position) 
{     
	    txt  ="<table width=\"300\" cellspacing=\"1\" cellpadding=\"0\" class=\"maintable\">\n";
		txt = txt+"<tr>\n";
      	txt = txt+"<td class=\"tableh1\"><h2>D&eacute;tails</h2></td>\n";
    	txt = txt+"</tr>\n";
    	txt = txt+"<tr>\n";
      	txt = txt+"<td valign=\"top\" class=\"thumbnails\">"+text+"</td>\n";
		txt = txt+"</tr>\n";
		txt = txt+"</table>";
	  
	layerWrite(txt);
  	dir = position;
  	display();
}

// ================================================================
// display: Fonction générale d'affichage
// ================================================================ 
function display() {
  if ( (bNetscape4) || (bIE4) || (bMozilla)) {
    if (snow == 0) 	{
      if (dir == 2) { // Center
	moveTo(over,x+offsetx-(150),y+offsety);
      }
      if (dir == 1) { // Right
	moveTo(over,x+offsetx,y+offsety);
      }
      if (dir == 0) { // Left
	moveTo(over,x-offsetx-300,y+offsety);
      }
      showObject(over);
      snow = 1;
    }
  }
}

// ================================================================
// mouseMove: Fonction permettant le déplacement de la fenetre popup
// ================================================================ 
function mouseMove(e) {
  if (bNetscape4) {x=e.pageX; y=e.pageY;}
  if (bIE4) {x=event.x; y=event.y;}
  if (bIE5) {x=event.x+document.body.scrollLeft; y=event.y+document.body.scrollTop;}

  if (bMozilla) { x=e.pageX; y=e.pageY; }
  if (snow) {
    if (dir == 2) { // Center
      moveTo(over,x+offsetx-150,y+offsety);
    }
    if (dir == 1) { // Right
      moveTo(over,x+offsetx,y+offsety);
    }
    if (dir == 0) { // Left
      moveTo(over,x-offsetx-300,y+offsety);
    }
  }
}

// ================================================================
// layerWrite: Fonction permettant d'écrire dans la fenetre popup
// ================================================================ 
function layerWrite(txt) {
  if (bNetscape4) 
    {
      var lyr = document.overDiv.document;
      lyr.write(txt);
      lyr.close();
    }
  else 
    {
      if (bIE4) 
	document.all["overDiv"].innerHTML = txt;
      else if (bMozilla)
	{
	  document.getElementById("overDiv").innerHTML = txt;
	}
    }
}

// ================================================================
// showObject: Fonction rendant visible l'objet
// ================================================================ 
function showObject(obj) {
  if (bNetscape4) 
    obj.visibility = "show";
  else 
    if (bIE4) obj.visibility = "visible";
    else if (bMozilla)
     {
	obj.style.visibility = "visible";
     }
}

// ================================================================
// showObject: Fonction cachant l'objet à l'ecran
// ================================================================ 
function hideObject(obj) {
  if (bNetscape4) 
    obj.visibility = "hide";
  else 
    if (bIE4) obj.visibility = "hidden";
    else if (bMozilla)
     {
        obj.style.visibility = "hidden";
     }
}

// ================================================================
// moveTo: Fonction de déplacement du layer
// ================================================================ 
function moveTo(obj,xL,yL) 
{
  if (bMozilla)
    {
	obj.style.left = xL;
	obj.style.top = yL;
    }
  else
    {
       obj.left = xL;
       obj.top = yL;
    }
}

