if(!window.FDFX_boxImages) FDFX_boxImages = new Object();





//-----------------------------------------------------------------------
//	POSITION DE LA SOURIS
//-----------------------------------------------------------------------

// variable glogal qui donne le cotée droit ou gauche ou on affiche la div
// 0 pour gauche et 1 pour droite
 





//-----------------------------------------------------------------------------
// Test si vide
//-----------------------------------------------------------------------------
FDFX_boxImages.empty = function(test){
	if(test == undefined || test == 'undefined' || test == 0 || test == '' || test == false || test == 'false') return true;
	else return false
}




//-----------------------------------------------------------------------------
// Recupere position de l'element
//-----------------------------------------------------------------------------
FDFX_boxImages.getPosition = function(element)
{
		
	var left = 0;
	var top = 0;
	/*On récupère l'élément*/
	var e = document.getElementById(element);
	/*Tant que l'on a un élément parent*/
	while (e.offsetParent != undefined && e.offsetParent != null)
	{
		/*On ajoute la position de l'élément parent*/
		left += e.offsetLeft + (e.clientLeft != null ? e.clientLeft : 0);
		top += e.offsetTop + (e.clientTop != null ? e.clientTop : 0);
		e = e.offsetParent;
	}
	return new Array(left,top);
}


//-----------------------------------------------------------------------------
// Construction de la div de l'image
//-----------------------------------------------------------------------------
FDFX_boxImages.constructDIV = function( ){
	var div = document.createElement('div');
	div.setAttribute("id","FDFX_box");
	div.style.border= "1px solid #666";
	div.style.position = "absolute";
	div.style.display = 'none';
	div.style.zIndex='1000';
	
	var img = document.createElement('img');
	img.setAttribute("id","FDFX_image");
	img.setAttribute("name","FDFX_image");
	img.setAttribute("onload","document.getElementById('FDFX_box').style.display = 'block';");
	div.appendChild(img);
	document.body.appendChild(div);
}






//-----------------------------------------------------------------------------
// l'argument e n'est passé à la fonction que par les navigateur n'ayant pas
// implémenté event comme objet, IE posséde son propre objet bien connu event
//-----------------------------------------------------------------------------
FDFX_boxImages.WhereMouse = function(e){
	
	var DocRef;    // Variable pour IE uniquement
	//-- Il faut traiter le CAS des DOCTYPE sous IE
	if( document.documentElement && document.documentElement.clientWidth) // Donc DOCTYPE
	  DocRef = document.documentElement;   // Dans ce cas c'est documentElement qui est réfèrence
	else
	  DocRef = document.body;                    // Dans ce cas c'est body qui est réfèrence

  // L'événement est passée à la fonction
  // donc tous sauf IE…
  if(e){      
 
  // Dans ce cas on obtient directement la position dans la page
    var Mouse_X = e.pageX;
    var Mouse_Y = e.pageY;
  }
  else{                      // Dans ce cas on obtient la position relative à la fenêtre d'affichage
 
 
    var Mouse_X = event.clientX;
    var Mouse_Y = event.clientY;

	
    //-- On rajoute la position liée aux ScrollBars
    Mouse_X += DocRef.scrollLeft;
    Mouse_Y += DocRef.scrollTop;

  }
 
 	if(Mouse_X< (DocRef.offsetWidth)/2)
  		cotee=0;
	else
		cotee=1;
		
	return cotee;
}

FDFX_boxImages.out = function(){

document.getElementById("FDFX_box").style.display='none';

}



//-----------------------------------------------------------------------------
// Affchage de l'image survolé 
//-----------------------------------------------------------------------------
FDFX_boxImages.afficheBox = function(elmt,e){
	
	var position = new Array();
	
	 // largeur de l'image qui s'affiche au survol
	var sourceImages = elmt.src; // recupere la src de l'image a afficher dans la div
	var ratio = elmt.width / elmt.height; 
	
	if (ratio>=1) 
	{
		var larg=300;
	} 
	else 
	{
		if(ratio>=0.53)
			var larg=250;
		else
			var larg=180;
	}
	var haut=larg / ratio;
	var marge = (haut - elmt.height) / 2;
	
	
	position = FDFX_boxImages.getPosition(elmt.id);
	
	
	
	var cotee = FDFX_boxImages.WhereMouse(e); // initialise la variable cotee (droite gauche pour la position de la div)
	
	
	var image = document.getElementById("FDFX_image");
	var largeur = elmt.width;
		image.src = elmt.src;
		image.style.width=larg+"px";
		
		
	var div = document.getElementById("FDFX_box");
	
	if (cotee==1) // droit
	{
		div.style.left=position[0]-larg+'px';
		div.style.top=(position[1] - marge)+'px';
	}
	else // gauche
	{
		div.style.left= position[0]+largeur+'px';
		div.style.top= (position[1] - marge)+'px';
		
	}
	
	document.getElementById('FDFX_box').style.display = 'block';
}

//-----------------------------------------------------------------------
// INITIALISER
//-----------------------------------------------------------------------
FDFX_boxImages.loadEvent = function(){
	//liste toutes les balises <img>
	var imgs = document.body.getElementsByTagName('img');
	
	for(var i=0;i<imgs.length; i++){
		if(!FDFX_boxImages.empty(imgs[i].alt)){
			if(imgs[i].alt == "boxImages")
			{
				imgs[i].onmouseover = function(e){FDFX_boxImages.afficheBox(this,e);};
				imgs[i].onmouseout = function(){FDFX_boxImages.out();};
			}
		}
	}
	FDFX_boxImages.constructDIV();
}

//-----------------------------------------------------------------------
//	ONLOAD
//-----------------------------------------------------------------------
if(Event.domReady) Event.domReady.add(FDFX_boxImages.loadEvent);
else{
	var fn = window.onload;
	window.onload = function(){
		FDFX_boxImages.loadEvent();
		fn();
	}
}
