if(typeof JRJ=="undefined"||!JRJ){var JRJ={}}if(typeof JRJ.ui=="undefined"||!JRJ.ui){JRJ.ui={}}(function($){JRJ.ui.ImageScroll=function(container,config){this.config={delay:2,speed:20,startDelay:2,direction:"h",autoPlay:true,distance:"auto",scrollItemCount:1,rightBtn:null,leftBtn:null};$.extend(this.config,config||{});this.init(container)};JRJ.ui.ImageScroll.prototype={init:function(container){this.container=$("#"+container)[0];this.scroller=$(this.container).find("ul")[0];this.step=2;var config=this.config;if(config.speed<20){this.step=5}this.scrollTimer=null,this.startTimer=null,this.startDelayTimer=null;this.isHorizontal=(this.config.direction=="h");this._distance=0;this.scrollable=true;this.distance=config.distance;this.suspend=false;this.paused=false;$(this.container).bind("mouseover",{obj:this},function(event){event.data.obj.suspend=true});$(this.container).bind("mouseout",{obj:this},function(event){event.data.obj.suspend=false});if(config.leftBtn&&config.rightBtn){var leftBtn=$("#"+config.leftBtn);var rightBtn=$("#"+config.rightBtn);leftBtn.bind("mouseover",{obj:this},function(event){event.data.obj.pause()});leftBtn.bind("mouseout",{obj:this},function(event){event.data.obj.play()});leftBtn.bind("click",{obj:this},function(event){event.data.obj.next()});rightBtn.bind("mouseover",{obj:this},function(event){event.data.obj.pause()});rightBtn.bind("mouseout",{obj:this},function(event){event.data.obj.play()});rightBtn.bind("click",{obj:this},function(event){event.data.obj.previous()})}this._isScrollable();if(config.autoPlay){var instance=this;instance.startDelayTimer=setTimeout(function(){instance.play()},instance.config.startDelay*1000)}},play:function(){var instance=this;if(!instance.config.autoPlay){return}instance.paused=false;if(instance.startDelayTimer){clearTimeout(instance.startDelayTimer)}if(instance.scrollTimer){return}if(!instance.startTimer){instance.startTimer=setTimeout(function(){instance.start()},instance.config.delay*1000)}},pause:function(){this.paused=true},start:function(){var instance=this;this.startTimer=null;if(instance.paused){return}instance._distance=0;instance.scrollTimer=setInterval(function(){instance.scroll()},instance.config.speed)},_isScrollable:function(){var curLi=$(this.scroller).find("li")[0];if(!curLi){this.scrollable=false;return}this.distance=this.config.distance=="auto"?curLi[this.isHorizontal?"offsetWidth":"offsetHeight"]:this.config.distance;with(this.scroller){if(this.isHorizontal){this.scrollable=(scrollWidth-scrollLeft-this.container.offsetWidth)>=this.distance}else{this.scrollable=(scrollHeight-scrollTop-this.container.offsetHeight)>=this.distance}}},_onScroll:function(){for(var i=0;i<this.config.scrollItemCount;i++){this.scroller.appendChild(this.scroller.getElementsByTagName("li")[0])}this.container[this.isHorizontal?"scrollLeft":"scrollTop"]=0;if(this.config.onScroll){this.config.onScroll()}this._isScrollable()},scroll:function(){if(this.suspend){return}this._distance+=this.step;var d;if((d=this._distance%this.distance)<this.step){this.container[this.isHorizontal?"scrollLeft":"scrollTop"]+=(this.step-d);clearInterval(this.scrollTimer);this.scrollTimer=null;this._onScroll();if(this.scrollable&&!this.paused){this.play()}}else{this.container[this.isHorizontal?"scrollLeft":"scrollTop"]+=this.step}},previous:function(){var $scroller=$(this.scroller);var scroller=$scroller[0];for(var i=0;i<this.config.scrollItemCount;i++){var lis=$scroller.find("li");scroller.insertBefore(lis[lis.length-1],lis[0])}this.container[this.isHorizontal?"scrollLeft":"scrollTop"]=0;if(this.config.onScroll){this.config.onScroll()}},next:function(){this.container[this.isHorizontal?"scrollLeft":"scrollTop"]+=this.distance;this._onScroll()}}})(jQuery);

