var MooSlideShow=new Class({initialize:function(a){this.container=(typeof a=="string")?$(a):a;this.slides=Array();this.fx=Array();this.position=0;var b=arguments[1]||{};var c={'delay':5000,'width':null,'height':null,'images':Array(),'duration':1000,'effect':'Fade','random':false};if(!['Fade','SlideRight','SlideLeft','SlideDown','SlideUp'].contains(this.effect)){this.effect='Fade'}for(key in c){this[key]=(b[key])?b[key]:c[key]}},start:function(){if(this.container){var c=this;if(!this.images.length){this.container.getElements('img').each(function(a,b){c.images[b]=a.get('src')});this.container.empty()}if(this.images.length>1){this.slides=new Asset.images(this.images,{onComplete:function(){c.play()}})}}},play:function(){var c=this;var d={'duration':this.duration,'link':'cancel','transition':Fx.Transitions.Sine.easeInOut};this.slides.each(function(a,b){a.setStyle('opacity','0');a.inject(c.container);c.fx[b]=new Fx.Tween(a,d)});this.width=(this.width)?this.width:this.slides[0].width;this.height=(this.height)?this.height:this.slides[0].height;this.container.setStyles({'width':this.width,'height':this.height,'overflow':'hidden'});this.next()},next:function(){var c=(this.slides.length-1);var d=0;var e=Math.round((c-d)*Math.random()+d);if(typeof this.previous=="undefined"){if(this.random){this.position=e}this.slides[this.position].setStyle('opacity',1)}else{if(this.effect.contains('Slide')){this.slides.each(function(a,b){a.setStyle('zIndex',0)});this.slides[this.previous].setStyle('zIndex',10);this.slides[this.position].setStyles({'zIndex':100,'opacity':1})}switch(this.effect){case"Fade":this.fx[this.previous].start('opacity','0');this.fx[this.position].start('opacity','1');break;case"SlideRight":this.slides[this.position].setStyle('left','-'+this.width+'px');this.fx[this.position].start('left','0px');break;case"SlideLeft":this.slides[this.position].setStyle('left',this.width+'px');this.fx[this.position].start('left','0px');break;case"SlideDown":this.slides[this.position].setStyle('top','-'+this.height+'px');this.fx[this.position].start('top','0px');break;case"SlideUp":this.slides[this.position].setStyle('top',this.height+'px');this.fx[this.position].start('top','0px');break}}this.previous=this.position;if(this.random){while(e==this.position){e=Math.round((c-d)*Math.random()+d)}this.position=e}else{this.position++;if(!this.slides[this.position]){this.position=0}}this.timer=this.next.delay(this.delay,this)}});
