/*
	SLIDESHOW 
		version : 20090928
		créateur : alienor.net
*/
/* 
	CONF - variables (a initialiser avec les valeurs des constant/setup TS)
		numImg	:	nbre d'images a afficher en même temps
		slideDiv	:	le selecteur de la div superieure aux div/img du slideshow
		prefix	:	le prefix du nom id des images , ex "image_" : image_1, image_2, image_3 etc...
		delay		:	le delai entre chaque slide
*/
var numImg = 2;
var slideDiv = '#slideshowPartenairesContainer';
var prefix = 'part_';
var delay = 3000;
//
var dom = '';
//
var slideShow = function(){
	var toShowList = '';
	var toHideList = '';
	var idFirst = '';
	//
	var count = 0;
	var stack = new Array();
	//
	idFirst = $('[id^="'+prefix+'"]:visible + [id^="'+prefix+'"]:hidden', dom).length ? $('[id^="'+prefix+'"]:visible + [id^="'+prefix+'"]:hidden', dom).prev().attr('id') : $('[id^="'+prefix+'"]:last', dom).attr('id');
	var keyFirst = 0;
	//
	$('[id^="'+prefix+'"]', dom).each(function(i){
		stack[i] = $(this).attr('id');
		if($(this).attr('id') == idFirst) {
			keyFirst = i;
		}
	});
	// on recupere les nextSibling
	var j = 0;
	for(i = keyFirst + 1; stack[i] && (j < numImg); i++, j++) {
		toShowList += '#'+stack[i]+',';
	}
	// on recupere les previous sibling
	for(i = 0; j < numImg; i++, j++) {
		toShowList += '#'+stack[i]+',';
	}
	toShowList = toShowList.substr(0, toShowList.length-1);
	// on recupere le selecteur des visibles
	$('[id^='+prefix+']:visible', dom).each(function(){
		toHideList += '#'+$(this).attr('id')+',';
	});
	toHideList = toHideList.substr(0, toHideList.length-1);
	// fondu
	$(toHideList).fadeOut('fast', function(){
		$(toShowList).fadeIn();
	});	
};
$(function(){
	dom = $(slideDiv);
	// au cas ou on INIT avec les numImg premiers à show()...
	$('[id^="'+prefix+'"]', dom).each(function(i){
		if(i < numImg) {
			$(this).show();
		} else {
			$(this).hide();
		}
	});
	// si le nbre d'img est > a numImg sinon pas la peine de lancer le slideshow
	if($('[id^="'+prefix+'"]', dom).length > numImg) {
		setInterval('slideShow()', delay);
	}
});