// JavaScript Document
// initialisation de la zone image
var haut = "";
var cheminImage = ""; // initialisation de la zone image
var lienpopup = "javascript:fermer_menu('normal');";
//var taillebg = 1;
var cmpt;
var endWidth = false;
var endHeight = false;
var imgWidth = 0;
var imgHeight = 0;
var coefX ; // prend 1/10 de la taille de limage pour l ouverture en 10 fois
var coefY ; // prend 1/10 de la taille de limage pour l ouverture en 10 fois
var cptRed = 0;  // util pour la reduction de la zone image
var value ;
var isOpen = false;
var isActif = false; // pour eviter de lancer plusieur fois le meme interval
var sauveX ;
var sauveY ;
var monImage;
var cmpt;

//---------------------------------------------------------------------------------------
//                                     Partie gestion des images
//---------------------------------------------------------------------------------------
function ouvrir_menu(cheminImage,x,y)
{

	if(!isActif)
	{
		// verifie si une photo est déja ouverte si oui la ferme avant d ouvrir la nouvelle
		if(isOpen)
		{
			sauveX = x ;
			sauveY = y ;
			fermer_menu(cheminImage);
			return;
		}
		document.getElementById("menu_image").style.visibility = "visible";
		SaveCheminImage = cheminImage;
		cheminImage = "images/gd/" + cheminImage ; //image
		//alert(cheminImage);
		imgWidth = 0;
		imgHeight = 0;

		monImage = new Image;

		monImage.src = cheminImage;
		document.getElementById("image").src= cheminImage;
		
		var position_x = x ; //(largeur ecran - largeur image)/2
		var position_y = y ;//(hauteur ecran - hauteur image)/2

		
		//taillebg = 1;

		value = 0 ;
		document.getElementById("menu_image").style.top = position_y;
		document.getElementById("menu_image").style.left = position_x;
		document.getElementById("menu_image").style.height = 0;
		document.getElementById("menu_image").style.width = 0 ;
		document.getElementById("image").style.width = 0 ;
		document.getElementById("image").style.height = 0;
	//	document.getElementById("menu_image").style.offsetWidth = 0;
	//	document.getElementById("menu_image").style.offsetHeight = 0;
		document.getElementById("menu_image").style.visibility = "visible";
		isActif = true;

		//alert('1 -  ' + imgWidth + '  -  ' + imgHeight );
		// on attend que l image est fini de charger pour l afficher.
		// Sous IE apres un premier chargement reste dans le carbage colector.
		// Donc methode onload ko.
		if (monImage.complete)
		{
				imgWidth = monImage.width;
				imgHeight = monImage.height;
				coefX = ((monImage.width) / 10) ;
				coefY = ((monImage.height) / 10);
				cmpt=setInterval('agrandir()',30);
		}
		else
		{
			monImage.onload = function()
			{
				imgWidth = monImage.width;
				imgHeight = monImage.height;
				coefX = ((monImage.width) / 10) ;
				coefY = ((monImage.height) / 10);
				cmpt=setInterval('agrandir()',30);
			}
		}
		//cmpt=setInterval('agrandir()',30);
	}	
}

function agrandir()
{
	//alert('2 -  ' + imgWidth + '  -  ' + imgHeight );
	if( document.getElementById("menu_image").offsetWidth <= imgWidth )
	{
		//alert('1-1');
		//document.getElementById("dim1").style.top = document.getElementById("dim1").style.top + 2;
		document.getElementById("menu_image").style.width = document.getElementById("menu_image").offsetWidth + coefX;
		document.getElementById("image").style.width = document.getElementById("image").offsetWidth + coefX;
		endWidth = false;
	}	
	else
	{
		//alert('1-2');
		document.getElementById("menu_image").style.width = imgWidth;
		document.getElementById("image").style.width = imgWidth;
		endWidth = true ;
	}
	
	if( document.getElementById("menu_image").offsetHeight <= imgHeight )
	{
		//alert('2-1');
		document.getElementById("image").style.height = document.getElementById("image").offsetHeight + coefY-1;
		document.getElementById("menu_image").style.height = document.getElementById("menu_image").offsetHeight+coefY-1;
		endHeight = false ;
	}
	else
	{
		//alert('2-2');
		document.getElementById("image").style.height = imgHeight;
		document.getElementById("menu_image").style.height = imgHeight;
		endHeight = true ;
	}
	
	if (value <= 100) 
	{
		value += 10;
		setOpacity2(value);
	}
	
	if (endWidth)
	{
		//alert('end wight ok');
		if (endHeight)
		{
			//alert('end height ok');
			clearInterval(cmpt);
			endWidth = false;
			endHeight = false;
			setOpacity2(100);
			isActif = false;
			isOpen = true;
			monImage = null ;
		}
	}
//	if (endHeight==true && endWidth==true)
//	{
//		endWidth = false;
//		setOpacity(100);
//		endHeight = false;
//		isActif = false;
//		clearInterval(cmpt);
//		isOpen = true;	 
//	}
}

// fonction qui va reduire l image en 10 fois
function reduire(chem)
{
	if( document.getElementById("menu_image").offsetWidth >= coefX+1)
	{
		//document.getElementById("dim1").style.top = document.getElementById("dim1").style.top + 2;
		
		document.getElementById("menu_image").style.width = document.getElementById("menu_image").offsetWidth - coefX;
		document.getElementById("image").style.width = document.getElementById("image").offsetWidth - coefX;
	}
	else
	{
		
		document.getElementById("menu_image").style.width = 1;
		document.getElementById("image").style.width = 1;
		endWidth = true ;
	}
	
	if( document.getElementById("menu_image").offsetHeight >= coefY+1)
	{
		document.getElementById("image").style.height = document.getElementById("image").offsetHeight - coefY;
		document.getElementById("menu_image").style.height = document.getElementById("menu_image").offsetHeight-coefY;
	}
	else
	{
		document.getElementById("image").style.height = 1;
		document.getElementById("menu_image").style.height = 1;
		endHeight = true ;
	}
	cptRed ++;
	
	if (value >= 0) 
	{
		value -= 10;
		setOpacity2(value);
	}
	
	if (cptRed >= 9)
	{
		document.getElementById("menu_image").style.visibility = "hidden";
		setOpacity2(0);
		cptRed = 0;
		isOpen = false ;
		endWidth = false;
		endHeight = false;
		clearInterval(cmpt);
		isActif = false; 
		
		if( chem != 'normal')
		{
			ouvrir_menu(chem,sauveX,sauveY);
		}
	}
}

function setOpacity2(value) 
{
	value = (value == 100)?99.999:value;
	objet = document.getElementById("menu_image");
	objet.style.filter = "alpha(opacity=" + value + ")";
	objet.style.KHTMLOpacity = value/100;
	objet.style.MozOpacity = value/100;
	objet.style.opacity = value/100;
}

function fermer_menu(chem)
{
	if(!isActif)
	{
		value = 100 ;
		isActif = true; 
		cmpt=setInterval('reduire("'+chem+'")',30);
	}
}
