<!--
// permet d'afficher un bloc (div ou autre) présent dans la page mais
// non visible a coté de la souris quand on survol un element
// - bullepop() affiche le bloc d'abord mis en caché css (hidden)
// - couic() le cache de nouveau

/* Les bulles doivent avoir ete preparees dans autant de calques separes
   en position:absolute (sans qu'il soit necessaire de preciser de top ou
   left) que l'on rendra invisible (visibility:hidden). Il est important
   d'avoir fixe la largeur et la hauteur de ces calques-bulles EN PIXELS. */

 /* La fonction bullepop() qui ouvre la bulle d'aide doit etre appelee
    avec 2 arguments:
   - le premier est l'identificateur (ID) du calque a faire apparaitre.
   - LE DEUXIEME EST OBLIGATOIREMENT "event" (sans les guillemets).
   - Le troisieme est le texte (commentaire) qui s'affichera dans le bloc
   c.a.d. un mot cle du javascript.
  */

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

function bullepop(idd,evt,text){
	
 // on cherche la valeur du scroll vertical
 var hauteurScroll="";
 if(window.pageYOffset){
	hauteurScroll=window.pageYOffset;
 }else if(document.documentElement.scrollTop){
	hauteurScroll=document.documentElement.scrollTop;
 }else{
	hauteurScroll=document.body.scrollTop;
 }

 var xfenetre,yfenetre,xpage,ypage,element=null;
 var offset= -60;           // decalage par defaut
 var bulleWidth=-20;       // largeur par defaut
 var hauteur=0;           // hauteur par defaut
 bulleStyle=null;

  if (document.layers) { //Netscape
    bulleStyle=document.layers[idd];
    xpage = evt.pageX ; ypage  = evt.pageY;
    xfenetre = xpage ;yfenetre = ypage ;
    if(text!="")bulleStyle.innerHTML=text; 
  } else if (document.all) { //IE
    element=document.all[idd]
    xfenetre = evt.clientX ;yfenetre = evt.clientY ;
    xpage=xfenetre ; ypage=yfenetre        ;
    if (document.documentElement.scrollLeft) xpage = xfenetre+document.documentElement.scrollLeft;
    if (document.documentElement.scrollTop) ypage = yfenetre+document.documentElement.scrollTop;
    // ou document.body.scrollTop suivant les navigateurs
    if(text!="")element.innerHTML=text;
  } else if (document.getElementById) { // Autre Firefox
    element=document.getElementById(idd)
    xfenetre = evt.clientX ; yfenetre = evt.clientY ;
    xpage=xfenetre; ypage=yfenetre;
    if(evt.pageX) xpage = evt.pageX ;
    if(evt.pageY) ypage  = evt.pageY ;
    if(text!="")element.innerHTML=text;
  }
  if(element)  bulleStyle=element.style;

  if(bulleStyle) {
     var yp0=ypage;
     var yf0=yfenetre;
     /* tests incongrus ˆ cause d'Opera5 */
     if(bulleStyle.width) bulleWidth = parseFloat(bulleStyle.width);
     if(bulleStyle.height) hauteur = parseFloat(bulleStyle.height);

     /* on met la bulle ˆ gauche du pointeur (si c'est possible)
        et en haut du pointeur si on est assez bas dans l'Žcran */
     if (xfenetre > bulleWidth+offset) xpage=xpage-bulleWidth-offset;
     else {
         if (xfenetre >0.5*bulleWidth+offset) xpage=xpage-0.5*bulleWidth-offset;
         else xpage=xpage;
	 }
     if ( yfenetre > 500) { 
	 	yfenetre=yfenetre;
     }else{
     	ypage=ypage+hauteur+offset;
        yfenetre=yfenetre;
	 }

     /* a cause des debilites d'Opera5 il faut rectifier 'ypage' pour eviter
        que la bulle ne s'ouvre par-dessus la souris. La bulle s'ouvrira
        TOUJOURS en bas avec Opera5. Derniere vacherie : il faut faire le test sur
        bulleStyle.width pour se proteger des distraits qui n'auront pas
        rempli bulleStyle.height */

     if (!bulleStyle.width)        
	 	 ypage=yfenetre+offset;
	 	 ypage=ypage+hauteurScroll; // on ajoute le scroll
	 	// ypage=ypage;
        if(typeof(bulleStyle.left)=='string') {
           bulleStyle.left=(xpage-10)+'px'; bulleStyle.top=ypage+'px';
        } else {
           bulleStyle.left=xpage; bulleStyle.top=ypage; 
		}
      bulleStyle.visibility="visible";
      bulleStyle.zIndex="99";
	 }
}
function couic(){
  if(bulleStyle)  bulleStyle.visibility="hidden";
}

-->
