(function($){
    
    // Default options
    var defaults = {
        nav: false,
        delay: 2000,
        restartDelay: 30000,
        fadeSpeed: 700,
		zindex: 20
    };
    
    $.fn.wtCarrousel = function(options){
	  
		var opts = $.extend({}, defaults, options);
		var obj_name = $(this).attr('id');
		var timer;
	  
		if (opts.nav){
			$(this).children(".slide").each(function(){		
				//Si nav est a true, ajouter les LI de navigation
				$('#'+obj_name+'-nav').prepend('<li data-i='+ (parseInt($(this).index())) +'>'+(parseInt($(this).index())+1)+'</li>');
			});
			
			//Ajouter une class pour specifier quel LI allumer au depart
			$('#'+obj_name+'-nav').children().last().addClass("current-slide-link");
		
			//Binder l'evenement click sur les LI
			$('#'+obj_name+'-nav').find('li').click(function(){
				if(!$('#'+obj_name).children(".slide").last().is(":animated")){ //Ne rien faire si un changement de slice est deje en cours
	
					clearTimeout(timer); // Supprimer le timer pour annuler le futur changement de slice
					
					nb_pas = parseInt($(this).attr('data-i'))-parseInt($('#'+obj_name+'-nav').children(".current-slide-link").attr('data-i'));
					if(nb_pas<0) nb_pas += $('#'+obj_name+'-nav li').size();
					for (i = 0; i < nb_pas; i++){ 
					wtCarrousel_swap(); //Monter la bonne image sur le dessu
					
					}
					timer = setTimeout(wtCarrousel_fade, opts.restartDelay); //Redemarer le timer mais a partir du restartDelay 
				}
			});
		}
		
		var wtCarrousel_fade = function(){
			$('#'+obj_name).children(".slide").last().fadeOut(opts.fadeSpeed, wtCarrousel_swap); 	//Fade la slice en cours, appel la fonction swap pour changer les positions des slices
			timer = setTimeout(wtCarrousel_fade, opts.delay);	//Relance le timer pour la prochaine execution
		}
		
		var wtCarrousel_swap = function(){ 
			$('#'+obj_name).children(".slide").last().prependTo('#'+obj_name).show(); //Remettre l'image cacher sous la pile
			if (opts.nav) {
				if($('#'+obj_name+'-nav').children(".current-slide-link").is(":first-child")){
					//alert("last")
					$('#'+obj_name+'-nav').children(".current-slide-link").removeClass("current-slide-link");
					$('#'+obj_name+'-nav').children("li:last-child").addClass("current-slide-link");
				}else{
					$('#'+obj_name+'-nav').children(".current-slide-link").removeClass("current-slide-link").prev().addClass("current-slide-link");
				}
			}//changer la position de la nav en cours
			//if (opts.nav) $('#'+obj_name+'-nav').children().last().prependTo('#'+obj_name+'-nav'); //changer la position de la nav en cours
		}
		
		//Initialiser le timer en debut de processus
		timer = setTimeout(wtCarrousel_fade, opts.delay);
		
    };
	
})(jQuery);

