vanilla.namespace("joblib.conseil.diaporama");joblib.conseil.diaporama={marginWidth:30,index:-1,conseils:null,init:function(a){this.view=$("#view-"+a.viewId);this.conseils=this.view.find("li.conseil");this.content=this.conseils.parent();this.content.append($(document.createElement("li")).addClass("margin").css({"float":"left",width:this.marginWidth,height:1}));this.content.prepend($(document.createElement("li")).addClass("margin").css({"float":"left",width:this.marginWidth,height:1}));this.content.width(this.conseils.outerWidth()*this.conseils.length+this.marginWidth*2);$("a.next",this.view).click(function(){this.nextConseil()}.bind(this));$("a.previous",this.view).click(function(){this.previousConseil()}.bind(this));var b=Math.round(Math.random()*(this.conseils.length-1));this.gotoConseilByIndex(b,true)},nextConseil:function(){if(!this.gotoConseilByIndex(this.index+1)){if(this.conseils.length>1){this.boundaryEffect(1,true);this.gotoConseilByIndex(0)}else{this.boundaryEffect(1)}}},previousConseil:function(){if(!this.gotoConseilByIndex(this.index-1)){this.boundaryEffect(-1)}},gotoConseil:function(c,a){c=$(c).get(0);var b=0;this.conseils.each(function(d){if(this==c){b=d;return false}return true});this.gotoConseilByIndex(b,a)},gotoConseilByIndex:function(c,b){if(c>=0&&c<this.conseils.length){var a=this._getConseilOffset(c);if(b){this.content.parent().stop(true).scrollLeft(a);this.adjustConseilHeight(c)}else{var d="easeInOutBack";if(Math.abs(this.index-c)>1){d="easeInBack"}this.content.parent().stop(true).animate({scrollLeft:a},{duration:800,easing:d});this.adjustConseilHeight(c)}this.index=c;return true}return false},_getConseilOffset:function(a){return a*this.conseils.eq(0).outerWidth()+this.marginWidth},boundaryEffect:function(b,a){var d=this._getConseilOffset(this.index);var c=this.content.parent();if(!a){c.stop(true,true)}c.animate({scrollLeft:d+b*20},{duration:100}).animate({scrollLeft:d},{duration:"fast"})},adjustConseilHeight:function(b){var a=$(this.conseils.get(b)).height();this.content.parent().animate({height:a},{queue:false})}};
