galeryInterval = null;
nbImages = 0;
imgActive = 1;
elemActive = '';
intervalActive = true;

$(document).ready(function(){
	// Opacité thumbs
	$('.boxPort a').fadeTo('fast', 0.7);
	$('.boxPort a').hover(function(){
		$(this).fadeTo('fast', 1);
	}, function(){
		$(this).fadeTo('fast', 0.7);
	}).click(function(){
		var id = $(this).attr('id');
		var elem = id.substr(6, id.length);
		activeElem('elem'+elem);
		return false;
	});
	
	// Load elem
	if(window.location.hash){
		var hash = window.location.hash.substr(1, window.location.hash.length);
		var hash = hash.substr(8, hash.length);
		activeElem('elem'+hash, false);
	}else
		activeElem($('#cadre .elem:first').attr('id'), false);
	$('#itemContainer .btnCreation').attr('target', '_blank');
	
	// Controls
	$('#itemContainer .next').click(function(){
		clearInterval(galeryInterval);
		intervalActive = false;
		$('#itemContainer .playAndPause').removeClass('pause').addClass('play');
		nextImage();
	});
	$('#itemContainer .prev').click(function(){
		clearInterval(galeryInterval);
		intervalActive = false;
		$('#itemContainer .playAndPause').removeClass('pause').addClass('play');
		prevImage();
	});
	$('#itemContainer .pause').click(function(){
		if(intervalActive){
			intervalActive = false;
			$('#itemContainer .playAndPause').removeClass('pause').addClass('play');
			clearInterval(galeryInterval);
		}else{
			intervalActive = true;
			$('#itemContainer .playAndPause').removeClass('play').addClass('pause');
			galeryInterval = setInterval("nextImage()", 5000);
		}
	});
	
	$('#itemContainer .btnControl').hover(function(){
		$(this).find('.visu').show();
	}, function(){
		$(this).find('.visu').hide();
	});
});

function activeElem(active, last){
	elemActive = active;
	var elem = $('#'+active);
	nbImages = elem.find('.item').length;
	imgActive = (last) ? nbImages : 1;
	
	elem.find('.item').each(function(i, el){
		if(i != imgActive-1) $(this).hide();
		else $(this).show();
	});
	
	$('#cadre .elem').each(function(i, el){
		if($(el).attr('id') != active)
			$(el).fadeOut('slow');
		else{
			$(el).fadeIn('slow');
		}
	});
	
	var classe = (elem.find('.item:first').hasClass('clair')) ? 'clair' : 'fonce';
	
	$('#itemContainer').attr('class', classe);
	$('#cadre .desc').html(elem.find('.item:first .itemDesc').html());
	if(nbImages>1) $('#cadre .number').html('Image <span class="imgActive">'+imgActive+'</span> sur ' + nbImages);
	else $('#cadre .number').html('');
	
	clearInterval(galeryInterval);
	galeryInterval = setInterval("nextImage()", 5000);
}

function nextImage(){
	if(imgActive == nbImages){
		// Change elem
		if($('#'+elemActive).next('.elem').length > 0){
			activeElem($('#'+elemActive).next('.elem').attr('id'), false);
		}else{
			activeElem($('#itemContainer .elem:first').attr('id'), false);
		}
	}else{
		// Retour au début
		lastImg = imgActive;
		imgActive = (imgActive+1>nbImages) ? 1 : imgActive+1;
		var itemActive = $('#'+elemActive+' .item').eq(imgActive-1);
		
		updateActive(lastImg, itemActive);
	}
}

function prevImage(){
	if(imgActive == 1){
		// Change elem
		if($('#'+elemActive).prev('.elem').length > 0){
			activeElem($('#'+elemActive).prev('.elem').attr('id'), true);
		}else{
			activeElem($('#itemContainer .elem:last').attr('id'), true);
		}
	}else{
		// Retour à la fin
		lastImg = imgActive;
		imgActive = (imgActive-1<1) ? nbImages : imgActive-1;
		var itemActive = $('#'+elemActive+' .item').eq(imgActive-1);
		
		updateActive(lastImg, itemActive);
	}
}

function updateActive(last, active){
	$('#'+elemActive+' .item').eq(last-1).fadeOut('slow');
	active.fadeIn('slow');
	
	var classe = (active.hasClass('clair')) ? 'clair' : 'fonce';
	
	$('#itemContainer').attr('class', classe);
	$('#cadre .desc').html(active.find('.itemDesc').html());
	if(nbImages>1) $('#cadre .number .imgActive').html(imgActive);
}