
//Code javascript valable sous ie !!!!

var temps=0;
var tetaObj=0;
var rayon=100;
var propX=2;
var propY=.2;
var centrageX=240;
var centrageY=40;
var speed=0.015;
var speedRemind = speed;
var decalageBloc = 550;


var monTmpGlobal = 0;

var grossissement=50;
var imageDivs = '';
var numberOfElements = 0;
var carousel = '';
var speedTest = '';
//Ce code ne met pas encore completement compréhensible donc je l'ai simplement copié  certaine choses s'eclairent !
window.addEvent('domready', function(){
  
	carousel = $('carousel');  //On va chercher la balise ayant pour id carousel
	speedTest = $('speedTest'); //Heu...

	imageDivs = carousel.getElementsByTagName("div"); //On recupère les noeuds div dans la balise carousel
	numberOfElements = imageDivs.length; //On les compte
	
	setInterval('startCarousel()',40); //heu...
	
	carousel.addEvent('mousemove', onMouseMove.bindWithEvent( carousel ));//On ajoute un ecouteur d'evenement au carousel (balise) et on attache un fonction a cet ecouteur
	carousel.addEvent('mouseout', onMouseOutCar.bindWithEvent( carousel ));	
	var pouik = carousel.style.width;
	var pouet = parseInt(pouik);
	if (pouik != "")
	{
		rayon = pouet/5.8;
	}
	for(i=0;i< numberOfElements; i++)
	{
		imageDivs[i].onmouseover = onMouseover;
		imageDivs[i].onmouseout = onMouseout;
	}
});

function onMouseOutCar( evt )
{
	var tmp = evt.client.x-decalageBloc;
	if(tmp-centrageX>0)
	{
		speed=-speedRemind;
	}
	else
	{
		speed=speedRemind;
	}
}

function onMouseMove( evt ) 
{
	var tmp = evt.client.x-decalageBloc;  //prendre en compte la position du 
	if (speed != 0)
	{
		if(tmp-centrageX>0)
		{
			speed=-speedRemind;
		}
		else
		{
			speed=speedRemind;
		}
		if(Math.abs(tmp-centrageX)>150)
		{
			//alert("POuiK !");
			speed = speed*5;
		}
	}
}

function onMouseover( evt )
{
	if (speed == '0' )
	{
		
	}
	if (this.style.zIndex>=0 && speed != 0)
	{
		speed=0;
		monTmpGlobal = this.style.width;

		this.style.width=4*grossissement+"px";
		this.style.zIndex = 7;
		this.style.borderColor = "#92b500";
		/*for (i=0;i<numberOfElements;i++)
		{
			alert(imageDivs[i].style.zIndex);
		}*/
	}
}

function onMouseout( evt )
{
	//var tmp = evt.client.x;
	//speed = ((tmp-centrageX)/Math.abs(tmp-centrageX))*speedRemind;
	this.style.width = monTmpGlobal;
	this.style.zIndex = 2;
	speed=speedRemind;
	time=1;
}

function startCarousel()
{
	if (speed !=0)
	{
		for(i=0;i< numberOfElements;i++)
		{
			styleMonImg = imageDivs[i].style;
			tetaObj = (i*(Math.PI*2)/numberOfElements)+temps;
			styleMonImg.position = 'absolute';
			styleMonImg.left = Math.cos(tetaObj)*rayon*propX+centrageX+"px";
			styleMonImg.top = Math.sin(tetaObj)*rayon*propY+centrageY+"px";
			
			styleMonImg.width = (grossissement*(Math.sin(tetaObj)+2))+"px";
			
			styleMonImg.zIndex = Math.round(3*(Math.sin(tetaObj)+1)); //le 3 sert a emplifier les differences !!
			styleMonImg.borderStyle = "solid";
			styleMonImg.borderWidth = "3px";
			styleMonImg.borderColor = "#233c03";
			//imageDivsStyle.width=20+"px";
			/*if (temps==0)
			{
				alert(styleMonImg.width);
			}*/
		}
		temps+=speed;
		if (temps>(Math.PI*2))
		{
			temps=0;
		}
	}
}
