var noobSlide=new Class({initialize:function(a){this.items=a.items;this.mode=a.mode||"horizontal";this.modes={horizontal:["left","width"],vertical:["top","height"]};this.size=a.size||194;this.box=a.box.setStyle(this.modes[this.mode][1],this.size*this.items.length+"px");this.button_event=a.button_event||"click";this.handle_event=a.handle_event||"click";this.interval=3000;this.buttons={previous:[],next:[],play:[],playback:[],stop:[]};if(a.buttons)for(var b in a.buttons)this.addActionButtons(b,$type(a.buttons[b])==
"array"?a.buttons[b]:[a.buttons[b]]);(this.handles=a.handles||null)&&this.addHandleButtons(this.handles);this.fx=new Fx.Style(this.box,this.modes[this.mode][0],a.fxOptions||{duration:500,wait:false});this.onWalk=a.onWalk||null;this.currentIndex=a.startItem||0;this.nextIndex=this.previousIndex=null;this.autoPlay=a.autoPlay||false;this._auto=null;this.box.setStyle(this.modes[this.mode][0],-this.currentIndex*this.size+"px");a.autoPlay&&this.play(this.interval,"next",true)},previous:function(a){this.currentIndex+=
this.currentIndex>0?-1:this.items.length-1;this.walk(null,a)},next:function(a){this.currentIndex+=this.currentIndex<this.items.length-1?1:1-this.items.length;this.walk(null,a)},play:function(a,b,c){this.stop();c||this[b](false);this._auto=this[b].periodical(a,this,false)},stop:function(){$clear(this._auto)},walk:function(a,b){if($defined(a)){if(a==this.currentIndex)return;this.currentIndex=a}this.previousIndex=this.currentIndex+(this.currentIndex>0?-1:this.items.length-1);this.nextIndex=this.currentIndex+
(this.currentIndex<this.items.length-1?1:1-this.items.length);b&&this.stop();this.fx.start(-this.currentIndex*this.size);if(this.onWalk)this.onWalk(this.items[this.currentIndex],this.handles?this.handles[this.currentIndex]:null);b&&this.autoPlay&&this.play(this.interval,"next",true)},addHandleButtons:function(a){for(var b=0;b<a.length;b++)a[b].addEvent(this.handle_event,this.walk.bind(this,[b,true]))},addActionButtons:function(a,b){for(var c=0;c<b.length;c++){switch(a){case "previous":b[c].addEvent(this.button_event,
this.previous.bind(this,true));break;case "next":b[c].addEvent(this.button_event,this.next.bind(this,true));break;case "play":b[c].addEvent(this.button_event,this.play.bind(this,[this.interval,"next",false]));break;case "playback":b[c].addEvent(this.button_event,this.play.bind(this,[this.interval,"previous",false]));break;case "stop":b[c].addEvent(this.button_event,this.stop.bind(this));break}this.buttons[a].push(b[c])}}});
