var count = 1; 
var direction = 1; 
var last_count = 0;
var last_tempX = 0;
var delta = 0;
var baseSpeed = 0.08; 
var radiusX = 290; 
var radiusY = 40; 
var centerX = 300; 
var centerY = 100;
var speed = 0.08;
var imageDivs = '';
var numberOfElements = 0;
var carousel = '';
var speedTest = '';


window.addEvent('domready', function(){
  
	carousel = $('carousel');
	speedTest = $('speedTest');

	imageDivs = carousel.getElementsByTagName("div"); 
	numberOfElements = imageDivs.length; 
	
	setInterval('startCarousel()',40);
	
	carousel.addEvent('mousemove', onMouseMove.bindWithEvent( carousel )); 
	
});

function onMouseMove( evt ) {

	
	tempX = evt.client.x;
	delta = (tempX - (centerX + 100)) / 2500;

	speed = delta / 5;
	/*
		
	if(last_tempX == 0)
	   last_tempX = tempX;
	last_tempX = tempX;
	
	if(speed > 0 && delta > 0)
	   speed = speed + delta;
	else if(speed < 0 && delta < 0)
	   speed = speed + delta;
	else if(speed > 0 && delta < 0)
	   speed = baseSpeed;
   else if(speed < 0 && delta > 0)
	   speed = -baseSpeed;
	   */
	/*
	if(speed > 100) speed = 100;
	if(speed < -100) speed = -100;
	*/
}

function startCarousel(){
	
	for(i=0; i < numberOfElements; i++){
	
		angle = i * ( Math.PI * 2 ) / numberOfElements;
	
		imageDivsStyle = imageDivs[ i ].style; 
		imageDivsStyle.position='absolute'; 
		
		posX = ( Math.sin( count * ( baseSpeed * speed ) + angle )* radiusX + centerX );
		posY = ( Math.cos( count * ( baseSpeed * speed ) + angle )* radiusY + centerY );
		
		
		imageDivsStyle.left = 40 + posX+"px"; 
		imageDivsStyle.top = -120 + posY+"px"
		
		imageDivWidth = posY/3;
		imageDivZIndex = Math.round(imageDivWidth)+100;
		
		imageDivsStyle.width = imageDivWidth+'px';
		imageDivsStyle.zIndex = imageDivZIndex;
		//angle += speed;
	}
	/*
	if(count > last_count + 10)
	{
	    if(delta < 600 && delta > 0)
	    {
		    delta = 600;
	    }
	
        if(delta > -600 && delta < 0)
	    {
		    delta = -600;
	    }
	   last_count = count;
	   speed = delta / 25000;
	}
	*/
				
	count += direction;
	
	if(count >  1000)
	   direction = -direction;
	   
    if(count <  1)
	   direction = -direction;


}
