
window.addEvent('domready',function(){new Slideshow();new Requests();new InfiniteCarousel($('carousel'));});var Slideshow=new Class({Implements:Options,options:{duration:12000},initialize:function(options){this.setOptions(options);this.container=$('slideshow');this.slides=this.container.getElements('li');this.currentIndex=0;this.interval;this.slides.each(function(slide,i){if(i>0)slide.setStyle('left',-900);slide.set('tween',{duration:1500});});window.addEvent('load',function(){this.interval=this.show.periodical(this.options.duration,this);}.bind(this));},show:function(){this.slides[this.currentIndex].fade('out');this.slides[this.currentIndex=this.currentIndex<this.slides.length-1?this.currentIndex+1:0].setStyle('left',0).set('opacity',0).fade('in');}});var Requests=new Class({initialize:function(){$('requests').getElements('a').addEvent('mouseenter',function(){this.set('tween',{duration:300,transition:'sine:in:out'});this.tween('margin-top',-5);});$('requests').getElements('a').addEvent('mouseleave',function(){this.set('tween',{transition:'bounce:out'});this.tween('margin-top',0);});}});var InfiniteCarousel=new Class({initialize:function(el){this.el=el;this.cur=0;this.carousel=this.el.getElement('ul');this.items=this.carousel.getChildren('li');this.carousel.fx=new Fx.Tween(this.carousel,{duration:1000,onComplete:function(){this.Position();this.Start.delay(2000,this);}.bind(this)});this.CloneItems();this.el.store('instance',this);},CloneItems:function(){this.w=0;this.items.each(function(item){this.w+=item.getSize().x;},this);var ul=new Element('ul');ul.adopt(this.items.clone().addClass('clone')).getChildren().inject(this.carousel.getFirst(),'before');ul.adopt(this.items.clone().addClass('clone')).getChildren().reverse().inject(this.carousel.getLast(),'after');ul.destroy();this.carousel.setStyles({'width':this.w*3,'left':0-this.w});this.Start();},Position:function(){if(this.items[0].getPosition(this.el).x>this.w||this.items.getLast().getPosition(this.el).x<0){this.carousel.setStyles({'left':0-this.w});}},Start:function(){var left=this.carousel.getStyle('left').toInt();this.carousel.fx.start('left',left-this.items[this.cur].getSize().x);this.cur++;if(this.cur>=this.items.length)this.cur=0;}});
