
var caroussel = {
     nbSlide : 0,
    nbCurrent : 1,
    elemCurrent : null,
    elem : null,
    timer : null,
    
   init : function(elem){
    this.nbSlide = elem.find('.slide').length;
     
   
     // initialisation du caroussel
     this.elem=elem;
      elem.find('.slide').hide();
      elem.find('.slide:first').show();
      this.elemCurrent =   elem.find('.slide:first');
    this.elem.find('.navigation span:first').addClass('active');
    
    // on crée le timer
   caroussel.play();
    
    //stop quand on passe dessus
    elem.mouseover (caroussel.stop);
    elem.mouseout (caroussel.play);
    
    },
    
    gotoSlide :function(num){
    if(num==this.nbCurrent){return false; }
    /*anumation en Fade
    this.elemCurrent.fadeOut();
    this.elem.find("#slide"+num).fadeIn();
    **/
    //animation en slide
    var sens = 1;
    if(num<this.nbCurrent){ sens = -1;}
    var cssDeb = { "left":sens * this.elem.width() };
    var cssFin = { "left":-sens * this.elem.width() };
    this.elem.find('#slide'+num).show().css(cssDeb);
     this.elem.find('#slide'+num).animate({"top":0,"left":0}, 1000);
    this.elemCurrent.animate(cssFin, 1000);
    
   /** this.elemCurrent.find(" .visu").fadeOut();
    this.elem.find("#slide"+num).show();
    this.elem.find("#slide"+num+" .visu").hide().fadeIn();
    
    var titleHeight =  this.elemCurrent.find(" .title").height();
    
    this.elemCurrent.find(" .visu .title").animate({"bottom" : - titleHeight },500);
    this.elem.find("#slide"+num+" .title").css("bottom",- titleHeight).animate({"bottom":0},500);
    **/
    this.elem.find(".navigation span").removeClass("active");
    this.elem.find(".navigation span:eq("+(num -1)+")").addClass("active");
    this.nbCurrent = num;
    this.elemCurrent = this.elem.find('#slide'+num);
   }, 
    
    next : function(){
       var num = this.nbCurrent +1;
        if(num  >this.nbSlide){
           num = 1;          
        }
        this.gotoSlide(num);
    },
    prev : function(){
        var num = this.nbCurrent -1;
        if(num <1 ){
         num = this.nbSlide;          
        }
        this.gotoSlide(num);
    },
    
    stop : function(){
         window.clearInterval (caroussel.timer);
        },
    play : function(){
        window.clearInterval (caroussel.timer);
       caroussel.timer = window.setInterval ("caroussel.next()", 5000);
    },
    
    
}
$(function(){
caroussel.init($("#caroussel"));

})
