var intervalReferences = 5000;
var nombreReferences = parseInt($('.references ul li').length)-1;
switchEnCours = false;
/****************************************
*	Gestion des références (3 éléments)
****************************************/
//Gestion du clic
$('.navigation a').click(function(){
	if(!switchEnCours){
		switchEnCours = true;

		//MAJ de l'heure de dernier changement
		var dateCurrent = new Date();
		dateReferences = dateCurrent.getTime();

		var currentRef = parseInt($(this).attr('rel'));
		var nextRef = 0;
		if($(this).attr('class') == 'prev'){
			nextRef = currentRef-1;
		}
		else{
			if($(this).attr('class') == 'next'){
				nextRef = currentRef+1;
			}
		}
		if(nextRef < 0){
			nextRef = nombreReferences;
		}
		if(nextRef > nombreReferences){
			nextRef = 0;
		}
		$('.references .logo').hide();
		$('.ref-logo-'+nextRef).fadeIn(500);
		$('.ref-text').hide();
		$('.ref-text-'+nextRef).show(500, function(){
			$('.navigation a').each(function(){
				$(this).attr('rel',nextRef); //On définit la nouvelle currentRef
			});
			switchEnCours = false; //Terminé
		});
	}
	return false;
});

//Gestion du défilement automatique
setTimeout(changeReference,intervalReferences);
var dateAct = new Date();
var dateReferences = dateAct.getTime();
function changeReference(){
	var dateCurrent = new Date();
	var diff = dateCurrent.getTime() - dateReferences;
	if(diff >= intervalReferences && !switchEnCours){ //Si la galerie n'a pas été modifiée depuis 4sec, alors je la change
		switchEnCours = true;
		var currentRef = parseInt($('.navigation .prev').attr('rel'));
		var nextRef = currentRef+1;
		if(nextRef > nombreReferences){
			nextRef = 0;
		}
		$('.references .logo').hide();
		$('.ref-logo-'+nextRef).fadeIn(500);
		$('.ref-text').hide();
		$('.ref-text-'+nextRef).show(500, function(){
			$('.navigation a').each(function(){
				$(this).attr('rel',nextRef); //On définit la nouvelle currentRef
			});
			switchEnCours = false; //Terminé
			setTimeout(changeReference,intervalReferences);
		});
	}
	else{ //Sinon, je vais revérifier dans un certain temps (temps de rotation - différence entre les dates de dernier changement et courante)
		if(diff > 0){
			setTimeout(changeReference,(intervalReferences-diff));
		}
		else{
			changeReference();
		}
	}
}
