var currentIndex=0;
var previousCounterIndex = 1;
var carousItems = new Array();
var NB_ITEMS;
var animCompleted = true;
var rotationInterval = 10000;
var timerMainCarous;

	
	
function initMainCarous(){

	var carouselHTML = "<div id='tmpImageHolder'></div>";
	carouselHTML += "<div id='preImage'>";
	carouselHTML += "<img id='selectGauche' src='images/carousel/bt_acc_carrousel_precedant_0.gif'/>";
	carouselHTML += "<div class='borderImagesOverlay'>";
	carouselHTML += "</div>";
	carouselHTML += "</div>";
	carouselHTML += "<div id='textePromo'>";
	carouselHTML += "<div id='spacer'></div>";
	carouselHTML += "<img src='images/carousel/img_acc_carrousel_grille.gif'/>";
	carouselHTML += "<div id='desc'> <!-- TEXTE PROMO --> </div>";
	carouselHTML += "</div>";
	carouselHTML += "<div id='imageCourante'>";
	carouselHTML += "<img id='textureMain' src='images/carousel/img_acc_carrousel_texture.png'/>";
	carouselHTML += "</div>";
	carouselHTML += "<div id='postImage'>";
	carouselHTML += "<img id='selectDroit' src='images/carousel/bt_acc_carrousel_suivant_0.gif'/>";
	carouselHTML += "<div class='borderImagesOverlay'>";
	carouselHTML += "</div>";
	carouselHTML += "</div>";

	timerMainCarous = setInterval("goRotateMainCarous()", rotationInterval);
	
	NB_ITEMS = $("#carousel").find("li").size();
	
	$("#carousel").find("li").each(function(index){
		var image = $(this).attr("media");
		var promoText = $(this).html();				
		carousItems.push(getPromo(image, promoText));	
	});
			
	$("#carousel").append(carouselHTML);
	
	setPromo(0);
		
	$("img#selectGauche").mousedown(function(){
		//var test = $("div#PostImage").css("background-image").replace(/^url|[\(\)]/g, '');		
		if (animCompleted){
			setPromo(2);
			clearInterval(timerMainCarous);
		}
   	});
   	
	$("img#selectDroit").mousedown(function(){	
		if (animCompleted){
			setPromo(1);
			clearInterval(timerMainCarous);	
		}								
   	});   	
   		
	
	/*$("#carousel").mouseenter(function() {	
		clearInterval(timerMainCarous);				
	});	 */
		
}

/********************************************************************************************/
/* param: direction	1 vers la gauche, 0 pour initialiser (chargement initial) et 2 à droite */
/********************************************************************************************/
function setPromo(direction){		
	var preImage;	
	var centerImage;
	var postImage;
	var bgPosition = 0;
	var indexForTmpImage;
	var tmpImageHolderBgPosition = 0;
	try {
		switch(direction)
		{
		case 0:	
			currentIndex++;	
			preImage = NB_ITEMS;
			centerImage = 1;
			postImage = 2;	
			indexForTmpImage = 1; 	
			$("div#preImage").css("background-image", "url(" + carousItems[preImage - 1].imageName + ")");	
			$("div#postImage").css("background-image", "url(" + carousItems[postImage - 1].imageName + ")");	
			
			//CONSTRUCTION ET AFFICHAGE DU SÉLECTEUR D'IMAGE (sauf pour IE6
			if ($.browser.msie && parseInt(jQuery.browser.version) < 7) {										
				//patch pour ie6									
			} else {					
			
				var noTabCounterHTML = "<div id='carousCounter'><div id='carousCounter_imgLeft'></div><div id='carousCounter_center'><div id='carousCounter_bar'></div>";		
				$("#carousel").find("li").each(function(index){			
					noTabCounterHTML += "<div id='noImage_";
					noTabCounterHTML += (index + 1).toString();
					noTabCounterHTML += "' class='noImage'>";
					noTabCounterHTML += (index + 1).toString();
					noTabCounterHTML += "</div>";		
				});		
				noTabCounterHTML += "</div><div id='carousCounter_imgRight'></div></div>";	
				$("div#imageCourante").append(noTabCounterHTML);
				$("div#carousCounter").css('width', (NB_ITEMS*20+34) + 'px');
				$("div#carousCounter_center").css('width', NB_ITEMS*20 + 'px');
				
				$("div#noImage_1").addClass("noImageSelect");
				
				//Jump à une image
				$("div.noImage").click(function(){												
					if (!$(this).hasClass('noImageSelect') && animCompleted) {
					
						clearInterval(timerMainCarous);	
						var noItem	= $(this).html();
						
						previousCounterIndex = $("div.noImageSelect").html();
						
						if (previousCounterIndex < noItem) {
							currentIndex = parseInt(noItem) - 1;										
							setPromo(1);
						} else {					
							currentIndex = parseInt(noItem) + 1;										
							setPromo(2);
						}				
					}
				});	
			}
				
		  break;
		case 1:					
			if (previousCounterIndex == currentIndex) {
				indexForTmpImage = currentIndex;
			} else {
				indexForTmpImage = previousCounterIndex;
			}  		
			currentIndex++;		
			if (currentIndex > NB_ITEMS) {
				currentIndex = 1;
			}	
			bgPosition = 590;
			tmpImageHolderBgPosition = -590;
			centerImage = currentIndex;		
			setImage(currentIndex);
			//Déplacement/changement images de côté  vers la gauche
			$("div#preImage").css("background-image", "url(" + carousItems[preImage - 1].imageName + ")");	
			$("div#preImage").css("background-position", "0px 0px");		
			animCompleted = false;
			$("div#preImage").animate({backgroundPosition: "-525px 0px"}, 1000);		
			$("div#postImage").css("background-image", "url(" + carousItems[postImage - 1].imageName + ")");			
			$("div#postImage").animate({backgroundPosition: "-525px 0px"}, 1000, function(){			
				$("div#postImage").css("backgroundPosition", "0px 0px");			
			});	
			$("div#noImage_" + previousCounterIndex).removeClass("noImageSelect");
			$("div#noImage_" + previousCounterIndex).addClass("noImage");				
			$("div#noImage_" + currentIndex).addClass("noImageSelect");		
			previousCounterIndex = currentIndex;					
			break;
		case 2:	 		
			if (previousCounterIndex == currentIndex) {
				indexForTmpImage = currentIndex;
			} else {
				indexForTmpImage = previousCounterIndex;
			}  				
			currentIndex--;
			if (currentIndex < 1) {
				currentIndex = NB_ITEMS;
			}
			bgPosition = -590;
			tmpImageHolderBgPosition = 590;
			centerImage = currentIndex;	
			setImage(currentIndex);
			//Déplacement/changement images de côté vers la droite			
			$("div#preImage").css("background-image", "url(" + carousItems[preImage - 1].imageName + ")");			
			$("div#preImage").animate({backgroundPosition: "0px 0px"}, 1000, function(){			
				$("div#preImage").css("backgroundPosition", "-525px 0px");
			});		
			$("div#postImage").css("background-image", "url(" + carousItems[indexForTmpImage - 1].imageName + ")");							
			$("div#postImage").css("background-position", "-525px 0px");
			$("div#postImage").animate({backgroundPosition: "0px 0px"}, 1000);
			$("div#noImage_" + previousCounterIndex).removeClass("noImageSelect");
			$("div#noImage_" + previousCounterIndex).addClass("noImage");
			$("div#noImage_" + currentIndex).addClass("noImageSelect");	
			previousCounterIndex = currentIndex;
			break;	  
		default:
		  //code to be executed if n is different from case 0 case 1 and 2
		}	
			
		//*** DESCRIPTION ***	
		$("div#desc").css("opacity", "0");
		$("div#desc").html(carousItems[centerImage - 1].desc);	
		var spacerHeight;
		var calculatedHeight = 170- $("div#desc").height();
		if (calculatedHeight > 38) {
			spacerHeight = 38;
		} else if (calculatedHeight < 10) {
			spacerHeight = 10;
		} else {
			spacerHeight = calculatedHeight;
		}		
		$("div#spacer").css("height", spacerHeight); 
		$("div#desc").animate({opacity: '1'}, 1000);
		
		
		//*** IMAGE CENTRE	***
		$("div#tmpImageHolder").css("background-position", "0px 0px");
		$("div#tmpImageHolder").css("background-image", "url(" + carousItems[indexForTmpImage - 1].imageName + ")");	
		$("div#imageCourante").css("background-position", bgPosition + "px" + " 0px");
		$("div#imageCourante").css("background-image", "url(" + carousItems[centerImage - 1].imageName + ")");	
		animCompleted = false;
		
		//Statistique de suivi Google Analytics (la fonction est dans libUtil.js)
		saveStats("Accueil_carroussel", "affichage", carousItems[centerImage - 1].imageName);
		
		$("div#imageCourante").animate({backgroundPosition: '0px 0px'}, 1000, function(){	
			animCompleted = true;
		});
	
		$("div#tmpImageHolder").animate({backgroundPosition: tmpImageHolderBgPosition + "px" + " 0px"}, 1010);	
	}catch(oException){	
		//alert(oException.message);
		printError(oException.message);
	}	
	function setImage(ind) {		
		if (ind == 1) {
			preImage = NB_ITEMS;			
			postImage = ind + 1;
		} else if (ind == NB_ITEMS) {
			preImage = NB_ITEMS - 1;			
			postImage = 1;		
		} else {
			preImage = ind - 1;			
			postImage = ind + 1;				
		}		
	}	
}	
  		
function getPromo(image, text){
	promoObj=new Object();
	promoObj.imageName=image;
	promoObj.desc=text;	
	return promoObj;
}	

function goRotateMainCarous(){	
	if (animCompleted){setPromo(1);}
}

	


