(function($){
	$.fn.slideShowBis=function(options){
		var defaults = {speed:'3000',cadence:'600'};
		var options = $.extend(defaults,options);
		return this.each(function(){
			var $$ = $(this);
			var obj = $$.children('div');
			var cpt = 0;
			var isPlay = false;
			var links = '<div class="link"><ul>';
			for(i=0;i<=obj.length-1;i++)
				links += '<li></li>';
			links += '</ul></div>';
			$$.wrap('<div></div>');
			$$.after(links);
			for(i=0;i<=obj.length-1;i++){
					$$.children('a').eq(0).appendTo($('.link li').eq(i));
				}
			var link = $$.siblings('div.link').find('a');
			link.eq(0).addClass('active');
			$$.css('position','relative');
			obj.css('position','absolute');
			
			$(obj).hide();
			$(obj[0]).show();
			autoPlay();
			
			link.click(function(e){
				e.preventDefault();
				var pos=$(this).index('.link a')
				gotoAndPlay(pos);
				link.removeClass('active');
				$(this).addClass('active');
			});
			
			function play(){
				(cpt>=obj.length-1)?cpt=0:cpt++;
				anime(cpt);
				link.removeClass('active');
				link.eq(cpt).addClass('active');
			}
			function autoPlay(){
				if(!isPlay)
					timer=setInterval(function(){play();},options.speed);
				isPlay=true;
			}
			function pause(){
				clearInterval(timer);
				isPlay=false;
			}
			function stop(){
				pause();
				cpt=0;
				anime(cpt);
			}
			function gotoAndStop(pos){
				if(pos==cpt)
					return false;
				pause();
				cpt=pos;
				anime(cpt);
			}
			function gotoAndPlay(pos){
				if(pos==cpt)
					return false;
				pause();
				cpt=pos;
				anime(cpt);
				autoPlay();
			}
			function anime(cpt){
				$(obj).fadeOut(options.cadence);
				$(obj[cpt]).fadeIn(options.cadence);
			}
		});
	}
})(jQuery);
