<!--
/* Script "z'experts" : http://perso.wanadoo.fr/coin.des.experts/
   delivre sans aucune garantie, ni des auteurs, ni du gouvernement. 
   Diffusion libre, mais merci de conserver cette signature :-) */
 
 /* La fonction bulle() qui ouvre la bulle d'aide a 3 arguments possibles:
   - le premier est le message a faire apparaitre. 
   - LE DEUXIEME EST OBLIGATOIREMENT "event" (sans les guillemets) 
   c.a.d. un mot cle du javascript.
   - Le 3eme argument est facultatif. Il permet d'ajuster 
   le decalage vertical afin de ne pas tronquer les bulles trop 
   longues ouvertes vers le bas de l'ecran; partez de
       hauteur=1,2 x taille police x nombre de lignes +10
   
   Enfin, mettre le bloc <DIV id="tip">...</DIV> en tete du bloc BODY. 
   NE PAS CHANGER LE NOM "tip";  sinon, vous pouvez modifier le style 
   qui suit ou le message d'erreur ˆ votre grŽ (mais laissez le
   position:absolute et un z-index tres grand)
  */
// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false
if (document.body)
	{
		
	var larg = (document.body.clientWidth);
	var haut = (document.body.clientHeight);
	}
	

function getMouseXY(e) {
	var tempX = 0
	var tempY = 0

  if (IE) { // grab the x-y pos.s if browser is IE
    tempX = e.clientX 
    tempY = e.clientY
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX
    tempY = e.pageY
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0}
  if (tempY < 0){tempY = 0}  
 
 
var array_loc = new Array(tempX,tempY);
 return (array_loc);

}

var bulleStyle=null

if (!document.layers && !document.all && !document.getElementById)
   event="chut";  //pour apaiser NN3 et autres antiquites

function bulle(msg,evt,hauteur){
	
 var xfenetre,yfenetre,xpage,ypage,element=null;
 var offset= 0;           // decalage par defaut
 var bulleWidth=300;       // largeur par defaut 
 if (!hauteur) hauteur=-20; // hauteur par dŽfaut
 var pos = getMouseXY(evt);
 xpage =	pos[0];
 ypage = pos[1];		
 xfenetre = xpage ;yfenetre = ypage ;		
	
if (document.layers) {
     bulleStyle=document.layers['tip'];
    bulleStyle.document.write('<p><layer bgColor="#ffffdd" '
       +'style="width:300px;border:1px solid black;color:black">'
       + msg + '</layer></p>' );
    bulleStyle.document.close();
  	
    	
  } 
  else if (document.all) {
    element=document.all['tip']
     xpage = xfenetre + getTrueBody().scrollLeft ; 
    ypage = yfenetre + getTrueBody().scrollTop;
    
  } 
  else if (document.getElementById) {
	  element=document.getElementById('tip')
    xfenetre = evt.clientX ;yfenetre = evt.clientY ;
    xpage=xfenetre ; ypage=yfenetre	;	
    if(evt.pageX) xpage = evt.pageX ;
    if(evt.pageY) ypage  = evt.pageY ;
  }
    
  if(element) {
     bulleStyle=element.style;
		 element.innerHTML=msg;}
		 	
  if(bulleStyle) {
	
     if (xfenetre > bulleWidth+offset) xpage=xpage-bulleWidth-offset;
     else xpage=xpage+15;
     if ( yfenetre > hauteur+offset ) ypage=ypage-hauteur-offset;
    var tailleBulle =document.getElementById('tip').clientHeight;
    if ((yfenetre+tailleBulle) > (haut+hauteur)){
    		
    		//ypage=yfenetre-getTrueBody().scrollTop+tailleBulle
    		ypage=getTrueBody().scrollTop+yfenetre-tailleBulle+hauteur;
    	}
 
	 if(typeof(bulleStyle.left)=='string') {
		 bulleStyle.left=xpage+'px'; bulleStyle.top=ypage+'px';  
	} else {
		bulleStyle.left=xpage     ; bulleStyle.top=ypage ; 
	}
     bulleStyle.visibility="visible";
     
  }
}
 
function couic(){
  if(bulleStyle)  bulleStyle.visibility="hidden";
}
function getTrueBody(){
	return ( (!window.opera && document.compatMode && document.compatMode!="BackCompat") || window.opera)? document.documentElement : document.body
}

