var QScroller=new Class({options:{slides:"qslide",direction:"h",duration:3000,auto:false,delay:1000,transition:Fx.Transitions.linear},initialize:function(B,A){this.setOptions(A);this.wrapper=$(B);this.wrapper.setStyles({position:"relative",overflow:"hidden"});this.wrapper.addEvent("mouseenter",this.fireEvent.pass("onMouseEnter",this));this.wrapper.addEvent("mouseleave",this.fireEvent.pass("onMouseLeave",this));this.slideOut=new Element("div").setStyles({position:"absolute",overflow:"hidden",top:0,left:0,background:"#fff",opacity:0,width:this.wrapper.getStyle("width"),height:this.wrapper.getStyle("height")}).injectInside(this.wrapper);this.slideIn=this.slideOut.clone();this.slideIn.injectInside(this.wrapper);this.slides=$$("."+this.options.slides);if($defined(this.options.buttons)){if($defined(this.options.buttons.next)){$(this.options.buttons.next).addEvent("click",this.next.bind(this))}if($defined(this.options.buttons.prev)){$(this.options.buttons.prev).addEvent("click",this.prev.bind(this))}if($defined(this.options.buttons.play)){$(this.options.buttons.play).addEvent("click",this.play.bind(this))}if($defined(this.options.buttons.stop)){$(this.options.buttons.stop).addEvent("click",this.stop.bind(this))}}this.auto=this.options.auto;this.idxSlide=0;this.step=0;this.isFirst=true},load:function(){if(!this.isFirst){this.idxSlide+=this.step;if(this.idxSlide>this.slides.length-1){this.idxSlide=0}else{if(this.idxSlide<0){this.idxSlide=this.slides.length-1}}}this.curSlide=this.slides[this.idxSlide].clone();this.show()},show:function(){var A=this.slideIn.getElement("div");if(A){A.replaceWith(this.curSlide)}else{this.curSlide.injectInside(this.slideIn)}this.doEffect()},doEffect:function(){this.fxOn=true;var F=this.isFirst?0:this.options.duration;var I=this.options.transition;var C=this.slideIn.effects({duration:F,transition:I});var H=0;var G=0;var D=0;var B=0;var E=this.wrapper.getStyle("width").toInt();var A=this.wrapper.getStyle("height").toInt();if(this.step>0){if(this.options.direction=="h"){H=-E;D=E}else{G=-A;B=A}}else{if(this.options.direction=="h"){H=E;D=-E}else{G=A;B=-A}}if(this.isFirst){if(this.auto){this.step=1}this.isFirst=false}this.slideOut.effects({duration:F,transition:I}).start({top:[0,B],left:[0,D]});C.start({top:[G,0],left:[H,0],opacity:[1,1]},this);this.fxEnd.delay(F+75,this)},fxEnd:function(){this.fxOn=false;this.swapSlides();if(this.auto){$clear(this.timer);this.timer=this.load.delay(this.options.delay,this)}},stop:function(){$clear(this.timer);this.auto=false},play:function(){if(!this.auto){$clear(this.timer);this.auto=true;this.step=1;if(!this.fxOn){this.load()}}},next:function(){this.stop();if(this.fxOn){return }this.step=1;this.load()},prev:function(){this.stop();if(this.fxOn){return }this.step=-1;this.load()},swapSlides:function(){this.slideOut.setStyles({zIndex:0,opacity:0});var A=this.slideOut;this.slideOut=this.slideIn;this.slideIn=A}});QScroller.implement(new Options,new Events);
