var Ncarousel = function(options) {
	 settings = { parent: "", reportoire_media:"", type_alignement:"vertical" , nav_parent:"" , play_parent : "" , effet : "slide" , bloc_descrition : "" , auto_start : 1 , auto_play : false , ratio_autoplay : 2.5  , delay : 1500 , type_navigation : "number" };
	 jQuery.extend(settings, options); 
		 // l'objet principale de carousel
		 var $carousel = {
				 parent : "",
				 start : "",
				 width_parent : "" ,
				 width_arrow : "" ,
				 height_arrow : "" ,
				 bloc_description : "" ,
				 auto_play : "" ,
				 delay : "" ,
				 ratio_autoplay : "" ,
				 type_navigation : "" ,
				 result_type_nav : "" ,
				 effet : "" ,
				 nav_parent : "" ,
				 play_parent : "" ,
				 reportoire : "" ,
				 type_alignement : "" ,
				 width_thumb : "" ,
				 images_ncarousel : "",
				 nav_ncarousel : "",
				 sous_images_nav : "",
				 id_parent : "",
				 init : function() {
					 $carousel.parent = $(settings.parent);
					 $carousel.start = settings.auto_start;
					 $carousel.width_parent = $($carousel.parent).width();
					 $carousel.height_parent = $($carousel.parent).height();
					 $carousel.width_arrow= 24;
					 $carousel.height_arrow = 39;
					 $carousel.bloc_description = $(settings.bloc_descrition);
					 $carousel.auto_Play = settings.auto_play;
					 $carousel.delay = settings.delay;
					 $carousel.ratio_autoplay = settings.ratio_autoplay;
					 $carousel.type_navigation = settings.type_navigation;
					 $carousel.result_type_nav;
					 $carousel.effet = settings.effet;
					 $carousel.nav_parent = settings.nav_parent;
					 $carousel.play_parent = settings.play_parent;
					 $carousel.reportoire = settings.reportoire_media;
					 $carousel.type_alignement = settings.type_alignement;
					 $carousel.width_thumb = 10;
		         },
				 nombre_images : 0,
				 current : 0 ,
				 description_content : "",
				 pas : 0,
				 width_sous_li : 0,
				 margin : 10,
				 class_active : "",
				 timer : "",
				 portrait : false,
				 arrow_current : "",
				 etat_img_clic : false,
				 repertoire_media :"",
				 // function qui afficher et retourner les plusieurs function de sortie de l'objet
				 get_docs:function () {
			           var docs = [];
			           docs.push("get_effet()");
			           docs.push("get_type()");
			           var option = [];
			           option.push("nav_parent");
			           option.push("play_parent");
			           docs.push(option);
			           return docs;
		         },
		         // c'ect une function de sortie pour declencher une function anynome quand vous voulez
		         onReady : function(ready) {
		        	 if(typeof ready == 'function'){
		        		 ready.call(this, "");
		        	  }  
		         },
		         // function qui reupere les effets disponible 
				 get_effet : function (){
			         var tab_effet = [];
			         tab_effet[0] = "slide";
			         tab_effet[1] = "fade";
			         tab_effet[2] = "slide_vertical";
			         return tab_effet;
		         },
		         set_effet : function() {	 
		         },
		         // function qui reupere les types de navigation disponible 
		         get_type : function() {
		        	 var tab_nav = [];
		        	 tab_nav[0]="number";
		        	 tab_nav[1]="cercle";
		        	 tab_nav[2]="thumb";
		        	 return tab_nav;
		         },
		         // function qui est responsable de creation la partie dynamique de html de carousel 
				 create_conteneur : function(){
		        	    $carousel.init();
		        	    $carousel.id_parent = $carousel.parent.attr("id");
		        	    $carousel.images_ncarousel = "images_"+$carousel.id_parent;  
		        	    $carousel.nav_ncarousel = "nav_"+$carousel.id_parent;
		        	    sous_images_nav = ".sous_images_nav_"+$carousel.id_parent;
			 			$($carousel.parent).find('ul').wrap("<div class='"+$carousel.images_ncarousel+"' />");
			 			var images_div = $($carousel.parent).find("."+$carousel.images_ncarousel);
			 			$carousel.nombre_images = $carousel.parent.find("li").length;
			        	$carousel.pas = $carousel.parent.width();
			        	repertoire_media =  $carousel.reportoire;
			 			$(images_div).width($carousel.nombre_images * $carousel.pas);
			 			$carousel.create_navigation();
			 			$carousel.create_play_btn();
			 			$carousel.adaptataion_images();
			 			$carousel.gestion_clavier();
			 			//$carousel.create_lightbox();
			 			//$carousel.click_img();
			 			if($carousel.effet == "fade"){
			 				$($carousel.parent).find("."+$carousel.images_ncarousel).find("li").fadeOut(10);
			 				$($carousel.parent).find("."+$carousel.images_ncarousel).find("li").eq($carousel.current).fadeIn($carousel.delay);
			 			}
			 			if($carousel.effet == "slide_vertical"){
			 				$($carousel.parent).find("."+$carousel.images_ncarousel).width($carousel.width_parent);
			 			}
						if($carousel.type_alignement == "vertical"){
			 				$($carousel.parent).css("float" , "left");
			 				$($carousel.nav_parent).find("."+$carousel.nav_ncarousel).width($carousel.width_thumb);
			 			}
						else {
							$carousel.create_arrow();
						}
		         },
		         // function de creation la partie html de lightbox(simple modale)
		         create_lightbox : function() {
		        	 var overlay_html = "<div id='overlay'></div>";
		        	 var lightbox_html = "<div id='conteneur_modal'></div>";
		        	 var modal_html = "<div id='modal'></div>";
		        	 $("body").prepend(overlay_html);
		        	 $("body").prepend(lightbox_html);
		        	 $("#conteneur_modal").append(modal_html);
		         },
		         // cette function conttient le listeners de l'evenement de click sur les images de carousel
		         click_img:function() {
		        	 $($carousel.parent).find("li").click(function() {
		        		 var index_this = $($carousel.parent).find("li").index(this);
		        		 $carousel.current = index_this+1;
		        		 $carousel.afficher_modal();
		        	 });
		         },
		         // cette function qui est affiché le lightbox(simple modal)
		         afficher_modal : function() {
		        	 $carousel.etat_img_clic = true;
		        		 var src = ($carousel.parent).find("li").eq($carousel.current-1).find("img").attr("src");
		        		 $("#modal").html("<img src="+src+" alt='' />");
		        		 $("#overlay").fadeIn("slow");
		        		 $("#conteneur_modal").show();
		        		 var width_m = $("#modal").width();
		        		 var height_m = $("#modal").height();
		        		 $("#modal").css({"opacity" : 0 , "width" : 0, "height" : 0});
		        		 $("#modal").show();
		        		 $("#modal").animate({ opacity:1,width : width_m, height : height_m },"slow");
		         },
		         // cette function qui cache le lightbox(modal)
		         cacher_modal:function() {
		        	 $("#overlay").fadeOut("slow");
		        	 $("#modal").fadeOut("slow", function() {
		        		 $("#conteneur_modal").hide();
		        	 });
	 				$carousel.pausing_click();
		         },
		         // cette function qui est responsable sur la partie de gestion les evenement des touches de clavier  
		         gestion_clavier : function() {
		        	 $(window).keydown(function(event){
		        		//console.log(event.keyCode);
		 				switch (event.keyCode) {
			 				case 39: 
			 					if($carousel.current < $carousel.nombre_images){
			 						$carousel.click_next();
			 					}
			 				break;
			 				case 37 : 
			 					if($carousel.current > 1){
                                  	$carousel.click_prev();
			 					}
				 			break;
			 				case 80 : 
			 					if(!$carousel.etat_img_clic){
			 						$carousel.playing_click();
			 					}
				 			break;
			 				case 83 : 
			 					$carousel.pausing_click();
				 			break;
			 				case 27 : 
			 					$("#overlay").hide();
			 					$("#conteneur_modal").hide();
			 					$carousel.pausing_click();
			 					$carousel.etat_img_clic = false;
			 				break;
			 				case 32 :
			 					 if($carousel.etat_img_clic){
			 						$carousel.cacher_modal();
			 						$carousel.etat_img_clic = false;
			 						$carousel.on_close = true;
			 						 $carousel.onClose("");
			 						 return false;
			 					}
			 					 else {
			 						 $carousel.afficher_modal();
			 						 $carousel.on_modal = true;
			 						 $carousel.onModal(""); 
			 						 return false;
			 					 }
			 				break;
			 				case 38 : 
			 					if($carousel.current < $carousel.nombre_images){
			 						$carousel.click_next();
			 					}
			 				break;
			 				case 40 : 
			 					if($carousel.current > 1){
                                  	$carousel.click_prev();
			 					}
			 				break;
			 				default : 
			 					$carousel.cacher_modal();
				 			break;
		 				}
		 			});
		         },
		         on_modal:false,
		         cont_fn_modal : [],
		         on_close:false,
		         cont_fn_close : [],
		         // function sortie qui accepte une function anonyme comme parametre et elle declenche si le modal est affiché 
		         onModal :function(modal_fn){
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn_modal.push(modal_fn);
		        		$carousel.n=1; 
		        	 }
		        	if($carousel.on_modal){
			        	 if(typeof $carousel.cont_fn_modal[0] == 'function'){
			        		 $carousel.cont_fn_modal[0].call(this, "");
			        	  }  
					}
		         },
		         // function sortie qui accepte une function anonyme comme parametre et elle declenche si le modal est supprimé de liste d'affichage
		         onClose :function(close_fn){
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn_close.push(close_fn);
		        		$carousel.n=1; 
		        	 }
		        	if($carousel.on_close){
			        	 if(typeof $carousel.cont_fn_close[0] == 'function'){
			        		 $carousel.cont_fn_close[0].call(this, "");
			        	  }  
					}
		         },
		         // cette function fait le calcul pour adapter les images non compatible au niveau de taille par la taille de conteneur de carousel adaptable
		         adaptataion_images : function() {
		        	 var images_li = $($carousel.parent).find("."+$carousel.images_ncarousel).find("li");
		        	 var li_img_width;
		        	 var li_img_height; 
		        	 for(var n_img = 0; n_img<$carousel.nombre_images;n_img++ ){
		        		 li_img_width = $(images_li).eq(n_img).find("img").width();
		        		 li_img_height = $(images_li).eq(n_img).find("img").height();
		        		 if(li_img_height>li_img_width){
		        			 $carousel.portrait = true;
		        		 }
		        		 else {
		        			$carousel.portrait = false; 
		        		 }
		        		 if($carousel.portrait){
		        			  if(li_img_height>$carousel.$carousel.height_parent){
		        				 // $(images_li).eq(n_img).find('img').width(width_parent);
		        				  if(li_img_height>li_img_width){
		        					  $(images_li).eq(n_img).find('img').height($carousel.height_parent);
		        				  }
		        				  else {
		        					  $(images_li).eq(n_img).find('img').width($carousel.width_parent);
		        				  }  
		        			  }
		        		 }
		        		 else {
		        			 if(li_img_width>$carousel.width_parent){
		        				 if(li_img_width>$carousel.width_parent){
		        					 $(images_li).eq(n_img).find('img').width($carousel.width_parent);
		        				 }
		        				 if(li_img_height>$carousel.height_parent) {
		        					 if(li_img_width>li_img_height ){
                                          $(images_li).eq(n_img).find('img').width("");
				        				  $(images_li).eq(n_img).find('img').height($carousel.height_parent);
				        			  }
			        				 else {
			        					 $(images_li).eq(n_img).find('img').width($carousel.width_parent);
			        				 }
		        				 }
		        			 }
		        		 }
		        	 }
		         },
		         // cette function qui créer les fleche de navigation de carousel
		         create_arrow : function() {
			        	var arrow_left = "<div class='arrow_left'><img src="+$carousel.repertoire_media+"images/pixel.gif width='' height ='' /></div>";
			        	var arrow_right = "<div class='arrow_right'><img src='"+$carousel.repertoire_media+"images/pixel.gif' width='' height ='' /></div>";
			        	$($carousel.parent).append(arrow_left + arrow_right);
			        	$(".arrow_right").css({ "margin-left" : $carousel.width_parent , "margin-top" : ($carousel.height_parent-height_arrow) / 2 });
			        	$(".arrow_left").css({ "margin-left" : - $carousel.width_arrow , "margin-top" : ($carousel.height_parent-height_arrow) / 2 });
			        	//$(".arrow_right").css({ "margin-left" : $carousel.width_parent - $carousel.width_arrow , "margin-top" : ($carousel.height_parent-$carousel.height_arrow) / 2 });
			        	//$(".arrow_left").css({ "margin-left" : 0 , "margin-top" : ($carousel.height_parent-height_arrow) / 2 });
			        	$carousel.click_arrow ();
		         },
		         on_next : false,
		         on_prev : false,
		         n : 0,
		         cont_fn : [],
		         cont_fn_prev : [],
		         // cette function qui contient les listeners de l'evenement click sur les fleches de navigation de carousel
		         click_arrow : function() {
			        	 $(".arrow_right").click(function(){
			        		 $carousel.arrow_current = $(this);
			        		 $carousel.click_next();
			        		 $carousel.on_next = true;
			        		 $carousel.onNext("");
			        	 });
			        	 $(".arrow_left").click(function(){
			        		 $carousel.arrow_current = $(this);
			        		 $carousel.click_prev();
			        		 $carousel.on_prev = true;
			        		 $carousel.onPrev("");
			        	 })
		         },
		         // cette function accepte une function anonyme comme parametre et qui declenche si on a passer à l'image suivant
		         onNext : function(next_fn) {
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn.push(next_fn);
		        		$carousel.n=1; 
		        	 }
		        	if($carousel.on_next){
			        	 if(typeof $carousel.cont_fn[0] == 'function'){
			        		 $carousel.cont_fn[0].call(this, "");
			        	  }  
					}
		         },
		         // cettte function accepte une function anonyme comme parametre et qui declenche si on a passer à l'image precedant
		         onPrev :function(prev_fn){
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn_prev.push(prev_fn);
		        		$carousel.n=1; 
		        	 }
		        	if($carousel.on_prev){
			        	 if(typeof $carousel.cont_fn_prev[0] == 'function'){
			        		 $carousel.cont_fn_prev[0].call(this, "");
			        	  }  
					}
		         },
		         // cette function qui gere le passage de l'image suivant 
		         click_next : function() {
		        	 if($carousel.current < $carousel.nombre_images){
	        			 $carousel.current++;
	        			 $carousel.current_function();
	        			 $(this).fadeIn(500);
	        			 $(".arrow_left").fadeIn(500);
	        			 $carousel.pausing_click();
	        			 if($carousel.etat_img_clic){	
	        				 var src_current = (parent).find("li").eq( $carousel.current-1).find("img").attr("src");
		        		     $("#modal").html("<img src="+src_current+" alt='' />");
	        			 }
	        		 }
	        		 else {
	        			 $(this).fadeOut(500);
	        		 }
		         },
		         // cette function qui gere le passage de l'image precedant
		         click_prev : function() {
		        	 if($carousel.current > 1){
	        			 $($carousel.arrow_current).fadeIn(500);
	        			 $(".arrow_right").fadeIn(500);
	        			 $carousel.current--;
	        			 $carousel.current_function();
	        			 $carousel.pausing_click();
	        			 if($carousel.etat_img_clic){	
		        			 var src_current = (parent).find("li").eq( $carousel.current-1).find("img").attr("src");
			        		 $("#modal").html("<img src="+src_current+" alt='' />");
	        			 }
	        		 }
	        		 else {
	        			 $(this).fadeOut(500);
	        		 }
		         },
		         // cette function qui créer la conteneur de la navigation de carousel
		         create_navigation : function() {
			        	 var div_nav = "<div class="+$carousel.nav_ncarousel+"></div>";
			        	 if($carousel.nav_parent == "" || $carousel.nav_parent == null){
			        		 $($carousel.parent).append(div_nav);
			        	 }
			        	 else {
			        		$($carousel.nav_parent).html(div_nav); 
			        	 } 
			        	 var nav_elem = $("."+$carousel.nav_ncarousel);
			        	 $(nav_elem).append("<ul></ul>");
			        	 var ar_nav = ["Commercial" , "Livraison" , "Dépannage" , "Urgence" , "Transport de voyageurs" , "Logistique"]
			        	 for(var i = 0;i<$carousel.nombre_images;i++){
			        		 switch ($carousel.type_navigation) {
					     		case "number":
					     			  $carousel.result_type_nav = (ar_nav[i]);
					     			  $carousel.class_active = "nav_active";
					     			break;
					     		case "cercle" : 
					     			 $carousel.result_type_nav = "<img src="+$carousel.repertoire_media+"images/cercle.png alt='cercle' class='cercle' />";
					     			 $carousel.class_active = "cercle_active";
					     			break;
					     		case "thumb" : 
					     			var src_img = $($carousel.parent).find("."+$carousel.images_ncarousel).find("ul").find("li").eq(i).find("img").attr("src");
					     			$carousel.result_type_nav = "<img src='"+src_img+"' alt='thumb' class='thumb' />";
					     			$(".thumb").parent("li").css("opacity" , 0.5);
					     			$carousel.class_active = "thumb_active";
					     			$(nav_elem).width(100*($carousel.nombre_images+2));
					     			break;
					     		default:
					     			$carousel.result_type_nav = (i+1);
					     			break;
					     	}
			        		 if($carousel.type_navigation=="number"){
			        			 $(nav_elem).find("ul").append("<li id=nav_"+(i+1)+"><span>"+$carousel.result_type_nav+"</span></li>");
			        		 }
			        		 else {
			        			 $(nav_elem).find("ul").append("<li id=nav_"+(i+1)+">"+$carousel.result_type_nav+"</li>");
			        		 }
			        		for(var j=0;j<$carousel.nombre_images;j++){
			        			var k = j+1;
			        			 $(nav_elem).find("ul li").eq(j).css("background" , "url('images/metier"+k+".jpg')");
			        		}
			        		
			        		
			        		
			        	 }
			        	 var nav_elem_width = $(nav_elem).width();
		        		 if(nav_elem_width > $carousel.width_parent){
		        			 // creer un sous galerie pour le thumbnails
		        			 var n_s = $carousel.sous_images_nav;
		        			 var n_s_n = n_s.substring(1,n_s.length);
		        			 $(nav_elem).find("ul").wrap("<div class="+n_s_n+" />");
		        			 $carousel.width_sous_li = $(nav_elem).find("li").width()+ $carousel.margin;
		        			 $(nav_elem).width($carousel.width_parent - ($carousel.width_sous_li-$carousel.margin));
		        			 $($carousel.sous_images_nav).width($carousel.nombre_images * ($carousel.width_sous_li));
		        			 $(nav_elem).css("overflow" , "hidden");
		        		 }
			        	$carousel.nav_click();
		         },
		         // cette function c'est la function d'initialisation de l'objet carousel
		         auto_start : function() {
			        	 $carousel.create_conteneur();
			        	 $carousel.auto_play();
			        	 $carousel.current = $carousel.start;
			        	 $carousel.current_function();
		         },
		         // cette function qui créer les boutons play et pause pour l'autoplay du carousel
		         create_play_btn : function() {
		        	 var play_div = "<div class='play_btn'> <span class=play_"+$carousel.id_parent+"><img src="+$carousel.repertoire_media+"images/play.png /></span></div>";
		        	 var pause_div = "<div class='play_btn'><span class=pause_"+$carousel.id_parent+"><img src="+$carousel.repertoire_media+"images/pause.png /></span></div>";
		        	 var cont_play;
		        	 if($carousel.play_parent=="" || $carousel.play_parent == null){
		        		 cont_play = $carousel.parent;
		        		 $carousel.play_parent = $carousel.parent
		        	 }
		        	 else {
		        		 cont_play = $carousel.play_parent;
		        		 
		        	 }
		        	 if($carousel.auto_Play){
		        		  $(cont_play).append(pause_div);
		        		  $carousel.pause_btn();
		        	 }
		        	 else {
		        		 $(cont_play).append(play_div);
		        		 $carousel.play_btn();
		        	 }	
		         },
		         // cette function contient le listeners de click sur le bouton play pour demarrer l'autoplay du carousel
		         play_btn : function() {
		        	 $($carousel.play_parent).find(".play_btn .play_"+$carousel.id_parent).click(function(){
		        		$carousel.playing_click();
		        		$carousel.on_play = true;
		        		$carousel.onPlay("");
		        	 });
		         },
		         cont_fn_play : [],
		         cont_fn_pause : [],
		         on_play : false,
		         on_pause : false,
		         // cette function accepte une function anonyme comme parametre et elle declenche quand on click sur le bouton Play
		         onPlay :function(play_fn){
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn_play.push(play_fn);
		        		 $carousel.n=1; 
		        	 }
		        	if($carousel.on_play){
			        	 if(typeof $carousel.cont_fn_play[0] == 'function'){
			        		 $carousel.cont_fn_play[0].call(this, "");
			        	  }  
					}
		         },
		         // cette function contient le listeners de click sur le bouton pause pour annuler l'autoplay du carousel
		         pause_btn : function() {
		        	 $($carousel.play_parent).find(".play_btn .pause_"+$carousel.id_parent).click(function(){
		        		  $carousel.pausing_click();
		        		  $carousel.on_pause = true;
			        	  $carousel.onPause("");
		        	 });
		         },
		         // cette function accepte une function anonyme comme parametre et elle declecnhe quand on click sur le bouton pause
		         onPause :function(pause_fn){
		        	 $carousel.n=0;
		        	 if($carousel.n==0){
		        		 $carousel.cont_fn_pause.push(pause_fn);
		        		$carousel.n=1;         	 
		        	 }
		        	if($carousel.on_pause){
			        	 if(typeof $carousel.cont_fn_pause[0] == 'function'){
			        		 $carousel.cont_fn_pause[0].call(this, "");
			        	  }  
					}
		         },
		         // cette function qui declenche l'autoplay apres le click sur le bouton Play
		         playing_click : function() {
		        	 $carousel.auto_Play = true;
		        		$($carousel.play_parent).find(".play_btn").html("<span class=pause_"+$carousel.id_parent+"><img src="+$carousel.repertoire_media+"images/pause.png /></span>");
		        	    $carousel.auto_play();
		        		$carousel.pause_btn();
		         },
		         // cette function qui stopper l'autoplay apres le click sur le bouton Pause
		         pausing_click : function() {
		        	    $carousel.auto_Play = false;
		        	    $($carousel.play_parent).find(".play_btn").html("<span class=play_"+$carousel.id_parent+"><img src="+$carousel.repertoire_media+"images/play.png /></span>");
		        	    $carousel.auto_play();
		        		$carousel.play_btn();
		         },
		         // cette function qui gere l'autoplay
		         auto_play : function() {
		        	     if($carousel.auto_Play){
			        		$carousel.timer = setInterval(function(){
			        			if($carousel.current < $carousel.nombre_images){	
				        			 $carousel.current++;
				    			     $carousel.autoPlaying();
			    			     }
			        			else {
			        				$carousel.current = 0;
			        			}
			        		},$carousel.delay*$carousel.ratio_autoplay);
		        		 }
		        	     else {
		        	    	 clearInterval($carousel.timer);
		        	     }
		         },
		         // cette function fait la mise à jour la variable current du carousel
		         autoPlaying : function() {
		        	 	 $carousel.current_function();
		         },
		         // cette function qui gere les click sur les elements de navigation du carousel
		         nav_click : function() {
			        	        $("."+$carousel.nav_ncarousel).find("ul").find("li").click(function(){
					        	var elem_this = $(this);
					        	var id_this = $(elem_this).attr("id");
					        	var index_ = id_this.indexOf("_");
					        	var length_id = id_this.length;
					        	var nombre_last_id = parseInt(id_this.substring(index_ + 1 , length_id));		        	
					        	$carousel.current = nombre_last_id;
					        	$carousel.current_function();
					        	$carousel.pausing_click();
			        	 });
		         },
		         // cette function qui est responsable sur la partie animation du carousel et elle gere aussi les differents types d'effet du carousel pour l'adapter ce qui est demande par l'utilisateur
		         current_function : function() {
		        	 		$("."+$carousel.nav_ncarousel).find("ul").find("li").removeClass($carousel.class_active);
		        	 		$("."+$carousel.nav_ncarousel).find("ul").find("li").eq($carousel.current-1).addClass($carousel.class_active);
		        	        $($carousel.sous_images_nav).animate({ left : - (($carousel.current-1) * $carousel.width_sous_li) }, $carousel.delay);
				        	$carousel.description_content = $($carousel.parent).find("."+$carousel.images_ncarousel).find("ul").find("li").eq($carousel.current-1).find("img").attr("alt");
				        	$($carousel.bloc_description).html($carousel.description_content);
				        	if($carousel.type_navigation == "cercle"){
				        		$("."+$carousel.nav_ncarousel).find("ul").find("li").html("<img src="+$carousel.repertoire_media+"images/cercle.png alt='cercle' />")
				        		$(".cercle_active").html("<img src="+$carousel.repertoire_media+"images/cercleV.png alt='cercle' />");
				        	}
				        	else {
				      
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").animate({opacity : 0.5},300);
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").eq($carousel.current-1).animate({ opacity : 1 },300);
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").removeClass("elem_active");
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li span").hide(10);
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").eq($carousel.current-1).addClass("elem_active");
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").eq($carousel.current-1).find("span").fadeIn(10)
					        		$("."+$carousel.nav_ncarousel).find("ul").find("li").eq($carousel.current-1).find("span").show();
				        	}
				        	switch ($carousel.effet){
				        	case "slide" :
				        		$("."+$carousel.images_ncarousel).animate({ left : - (($carousel.current-1) * $carousel.width_parent) }, $carousel.delay);
				        		break;
				        	case "fade" :
				        		$("."+$carousel.images_ncarousel).find("li").css("position" , "absolute");
				        		$("."+$carousel.images_ncarousel).find("li").fadeOut( $carousel.delay);
				        		$("."+$carousel.images_ncarousel).find("li").eq($carousel.current-1).fadeIn($carousel.delay);
				        		break;
				        	case "slide_vertical" : 
				        		$("."+$carousel.images_ncarousel).animate({ top : - (($carousel.current-1) * ($carousel.height_parent)) }, $carousel.delay);
				        		break;
				        		default : 
				        			$("."+$carousel.images_ncarousel).animate({ left : - (($carousel.current-1) * $carousel.width_parent) }, $carousel.delay);
				        			break;
				        	}
		         }
		 }
		 // declencheur de l'objet carousel par la function auto_start()
		 $carousel.auto_start();
		 return $carousel;
}
