//  Copyright 2003 Voyages-SNCF.com
// DOM ou pas DOM ?
if (document.getElementById) {
var DOM=true; } else {var DOM=false;};
var infowin;
overb='';
function enableInfoBulle(menu,intSelected,image){
 var_bulle= menus[menu]['bulle'];
 chassebulle(var_bulle); 
 if(document.images[image]){
	document.images[image].src="/images/booking_engine/pict_bulle.gif";
 }
 /* 
 	* 29/12/2005
 	* Modification nécessaire car les listes déroulantes ne vont plus de 0 à 6, on ne peut plus utiliser "intSelected" mise en place d'un contournement peut-êre à revoir
	*/
 if(menu!='cardType'){
	var_bulle = menus[menu][intSelected];
 }
 else{
	ct=document.forms[0].cardType;
	if(ct.options[intSelected].className){
	 var_bulle = menus[menu][parseInt(ct.options[intSelected].className)];
	}
	else {
	 var_bulle='';
	}
	/* 
	 * 29/12/2005 
	 */
 }

 if(!var_bulle) {
	if(document.images[image]){
	 document.images[image].src="/images/b.gif";
	}
 }
 menus[menu]['bulle'] = var_bulle;
 /* 
	* 04/01/2006 
	* Mise à jour de l'infobulle du type d'achat au changement de la liste de type de carte/abonnement
	*/
 if(menu=='PRODUCT_ID'){
	enableInfoBulle('cardType',0,'IMG_ID_INFOBULLE_cardType');
 }
 /* 
	* 04/01/2006 
	*/
} 

function infobulle(infobulle,width,height,evt)
	{
	if (infobulle!='') {
		if (DOM) {
		
		bulle = document.getElementById(infobulle);
		// cas par defaut : IE 5, IE 5.5, IE6, NS7, Mozilla Firebird 0.7, Mozilla 1.4, Camino, Opera 7
		bulle.style.display="block";
		bulle.style.width=width+"px";
		bulle.style.height=height+"px";
		
		// 
		if (evt.pageX) {
		courantX=evt.pageX ;
		courantY=evt.pageY;
		} else {
		courantX=evt.clientX+document.body.scrollLeft; 
		courantY=evt.clientY+document.body.scrollTop; };
		courantX+=10;
		courantY+=10;
/*  placement de l'infobule en fonction de la place disponible dans le viewport client */
var scrolledx,scrolledy;
var viewportx, viewporty;
if (self.pageYOffset) // all except Explorer
{
	scrolledx = self.pageXOffset;
	scrolledy = self.pageYOffset;
}
else if (document.documentElement && document.documentElement.scrollTop)
	// Explorer 6 Strict
{
	scrolledx = document.documentElement.scrollLeft;
	scrolledy = document.documentElement.scrollTop;
}
else if (document.body) // all other Explorers
{
	scrolledx = document.body.scrollLeft;
	scrolledy = document.body.scrollTop;
}
// distance par rapport au bord gauche du viewport
viewportx = courantX-scrolledx;
// distance par rapport au haut du viewport
viewporty = courantY-scrolledy;
// adaptation de la position par rapport au viewport : calcul de la visibilité de l'infobulle
// adaptation en hauteur : si il ne reste pas assez de hauteur en dessous pour afficher l'infobulle, on la déplace
if ( height > (document.body.clientHeight - viewporty)) { courantY = courantY- height  ;}
// idem en largueur
if ( width > (document.body.clientWidth - viewportx)) { courantX = courantX- width  ;}
			// affectation de la position
		bulle.style.left=courantX+"px";
		bulle.style.top=courantY+"px";
		
		} else  { 
		// Cas du navigateur non compatible DOM : pop-up
		features = 'resizable=yes,scrollbars=no,width='+width+',height='+height+',dependent=yes';
		infowin = window.open(nsUrl[infobulle],'info',features);
		infowin.resizeTo(width,height);
	// positionnement du pop-up par rapport a la taille de l'ecran
	courantX=evt.screenX; 
	courantY=evt.screenY;
	
	if ( (courantX+width)> screen.availWidth) {posx = screen.availWidth-width;} else {posx=courantX+10;};
	if ( (courantY+height)> screen.availHeight) {posy = screen.availHeight-height;} else {posy=courantY+10;};
	infowin.moveTo(posx,posy);
	infowin.focus();
		};
	 };
	};
function chassebulle(infobulle) {
	if (infobulle!=''){
		if (DOM) {
		bulle = document.getElementById(infobulle);
		bulle.style.display="none";
		} else {
		infowin.close();
		}; 
	};
	};