var ID_scroll=new Class({Implements:[Options],options:{leftHandle:null,rightHandle:null,container:null,speed:1000,startIndex:0,numShown:6,autoScroll:true,autoScrollTime:4000,displayWidth:null},initialize:function(options){this.setOptions(options);this.leftHandle=this.options.leftHandle;this.rightHandle=this.options.rightHandle;this.container=this.options.container;this.startIndex=this.options.startIndex;this.numShown=this.options.numShown;this.autoScroll=this.options.autoScroll;this.autoScrollTime=this.options.autoScrollTime;this.speed=this.options.speed;this.displayWidth=this.options.displayWidth;this.count=0;this.moveFx=new Fx.Tween($(this.container),{duration:this.speed,link:"cancel",transition:Fx.Transitions.Quad.easeInOut,onComplete:this.dimHandle.bind(this)});this.children=$(this.container).getElements("div");var childrenChildren=this.children[0].getChildren();this.newHeight=0;childrenChildren.each(function(item,index){this.newHeight+=childrenChildren[index].getScrollSize().y});this.dislpayHeight=this.newHeight;this.imgWidth=(parseInt(this.children[0].getSize().x)+parseInt(this.children[0].getStyle("margin-right")))*this.children.length;if(this.displayWidth==null){this.displayWidth=(parseInt(this.children[0].getSize().x)+parseInt(this.children[0].getStyle("margin-right")))*this.numShown}this.displayHeight=(parseInt(this.children[0].getSize().y)+parseInt(this.children[0].getStyle("margin-top"))+parseInt(this.children[0].getStyle("margin-bottom"))+parseInt(this.children[0].getStyle("padding-top"))+parseInt(this.children[0].getStyle("padding-bottom")));var handleHeight=$(this.leftHandle).getSize().y;var handleMargin=(this.displayHeight-handleHeight)/2;$(this.leftHandle).setStyle("margin-top",handleMargin);$(this.rightHandle).setStyle("margin-top",handleMargin);this.getMargin=this.displayHeight-parseInt(this.children[0].getSize().y);$(this.container).setStyles({height:this.displayHeight});$(this.container).getParent().setStyles({width:this.displayWidth,"padding-right":0,height:this.displayHeight,"padding-top":this.getMargin+5,"padding-bottom":this.getMargin});if($(this.container).getParent().getParent().getChildren()[0].getProperty("id")=="scrollerTitle"){var scrollerTitleWidth=parseInt($("scrollerTitle").getStyle("padding"));$("scrollerTitle").setStyles({width:this.displayWidth-5})}this.leftPos=this.children[this.startIndex].getCoordinates($(this.container)).left;if(this.leftPos<this.imgWidth){$(this.container).setStyle("left",-this.leftPos)}else{$(this.container).setStyle("left",-this.imgWidth)}if(this.autoScroll==true&&this.children.length>this.numShown){this.periodical=this.timedScroll.periodical(this.autoScrollTime,this,self)}if(this.startIndex==0){$(this.leftHandle).fade(0.3)}$(this.leftHandle).addEvent("mouseenter",this.leftHover.bind(this));$(this.rightHandle).addEvent("mouseenter",this.rightHover.bind(this));$(this.leftHandle).addEvent("mouseleave",this.stopScrolling.bind(this));$(this.rightHandle).addEvent("mouseleave",this.stopScrolling.bind(this))},leftHover:function(){$clear(this.periodical);this.fadeIn.delay(100,this);var start=parseInt($(this.container).getStyle("left"));this.moveFx.start("left",start,0)},rightHover:function(){$clear(this.periodical);this.fading=this.fadeIn.delay(100,this);var end=this.displayWidth-this.imgWidth;this.moveFx.start("left",end)},stopScrolling:function(){this.moveFx.cancel()},timedScroll:function(){this.count++;var start=parseInt($(this.container).getStyle("left"));var end=parseInt(this.children[0].getStyle("width"))+parseInt(this.children[0].getStyle("margin-right"));end=start-end;if(start<0){this.fadeIn()}if(this.count>=this.children.length-this.numShown){end=(this.displayWidth-this.imgWidth);this.count=0}if(end<(this.displayWidth-this.imgWidth)){end=0}var autoFx=new Fx.Tween($(this.container),{duration:1000,link:"cancel",transition:Fx.Transitions.Quad.easeInOut});autoFx.start("left",start,end)},dimHandle:function(){if(parseInt($(this.container).getStyle("left"))>=0){$(this.leftHandle).fade(0.3)}else{if(parseInt($(this.container).getStyle("left"))>=(this.displayWidth-this.imgWidth)){$(this.rightHandle).fade(0.3)}}},fadeIn:function(){var scrollPos=parseInt($(this.container).getStyle("left"));if(scrollPos<0){$(this.leftHandle).fade(1)}if(scrollPos>(this.displayWidth-this.imgWidth)){$(this.rightHandle).fade(1)}}});