
if(!Slide_show)var Slide_show={};SLIDE_SHOWS=new Hash();Slide_show=Class.create({initialize:function(widget_id,options){var SS=this;this.id=widget_id;this.options=Object.extend(Object.extend({},this.default_options),options||{});this.play_status=false;this.play_timer=false;this.container=$(widget_id);this.btn_play=this.container.down('img.play');this.btn_play.observe("click",function(){SS.play();});this.btn_pause=this.container.down('img.pause');this.btn_pause.observe('click',function(){SS.pause();});this.btn_back=this.container.down('img.back');this.btn_back.observe('click',function(){SS.go_back();});this.btn_next=this.container.down('img.next');this.btn_next.observe('click',function(){SS.go_forward();});this.total_slides=this.container.down('span.total').innerHTML;this.current_slide=this.container.select('img.slide_show_photo').size();this.counter=this.container.down('span.current');if(this.total_slides>1){this.container.select('img.play, img.pause, img.back, img.next').invoke('pngFix');SLIDE_SHOWS.set(this.id,SS);if(this.options.default_status){this.play();}}},default_options:{width:400,height:300,default_status:true,delay:10,transitions:true,effects:true,effects_percent:25},play:function(){var SS=this;this.status=true;this.btn_play.hide();this.btn_pause.show();SS.go_forward(true);this.play_timer=new PeriodicalExecuter(function(){SS.go_forward(true);},SS.options.delay);},pause:function(){this.status=false;this.btn_play.show();this.btn_pause.hide();this.play_timer.stop();},go_forward:function(auto){var SS=this;if(!auto&&this.status){this.play_timer.stop();this.play_timer=new PeriodicalExecuter(function(){SS.go_forward(true);},SS.options.delay);}
var cs=this.current_slide;if(cs!=this.total_slides){cs++;}else{cs=1;}
this.go_to_slide(cs);},go_back:function(){if(this.status){this.pause();}
var cs=this.current_slide;if(cs!=1){cs--;}else{cs=this.total_slides;}
this.go_to_slide(cs);},go_to_slide:function(slide_number){SS=this;if(1<=slide_number<=this.total_slides){var old_photo=this.container.down(".photo_"+this.current_slide);var old_info=this.container.down(".info_"+this.current_slide);var new_photo=this.container.down(".photo_"+slide_number);var new_info=this.container.down(".info_"+slide_number);SS.current_slide=slide_number;SS.counter.update(SS.current_slide);if((this.options.effects==true)&&this.status){if(this.random_b()){this.pan(new_photo);}else{this.zoom(new_photo);}}
if(this.options.transitions){old_photo.setStyle({zIndex:3});new_photo.setStyle({zIndex:2,display:"block"});old_photo.fade({duration:1.5,from:1,to:0});if(old_info&&new_info){old_info.fade({duration:0.75,from:1,to:0});new_info.appear({duration:0.75,from:0,to:1,delay:0.75});}}else{old_photo.hide();old_info.hide();if(old_photo&&new_photo){new_photo.show();new_info.show();}}}else{alert("trying to go to a slide number that doesn't exist");}},random_b:function(){return Math.round(Math.random());},random_coord:function(int_val){return Math.round(Math.random()*int_val);},pan:function(photo){var SS=this;var top_min=-(Math.round(this.options.effects_percent/100*this.options.height));var top_max=0;var left_min=-(Math.round(this.options.effects_percent/100*this.options.width));var left_max=0;var top_start=0;var top_end=0;var left_start=0;var left_end=0;var vert_fixed=this.random_b();if(vert_fixed){top_start=(this.random_b())?top_min:top_max;top_end=(top_start!=top_min)?top_min:top_max;left_start=Math.round(left_min/2);left_end=left_start;}else{left_start=(this.random_b())?left_min:left_max;left_end=(left_start!=left_min)?left_min:left_max;top_start=Math.round(top_min/2);top_end=top_start;}
photo.setStyle({top:top_start+'px',left:left_start+'px',width:(SS.options.width-left_min)+'px',height:(SS.options.height-top_min)+'px'});new Effect.Morph(photo,{style:{top:top_end+'px',left:left_end+'px'},duration:SS.options.delay,transition:Effect.Transitions.sinoidal});},zoom:function(photo){var SS=this;var width_start=this.options.width;var height_start=this.options.height;var scale_from=100;var scale_to=100+this.options.effects_percent;var top=this.random_b()?'0px':'auto';var bottom=(top!='0px')?'0px':'auto';var left=this.random_b()?'0px':'auto';var right=(left!='0px')?'0px':'auto';photo.setStyle({top:top,left:left,bottom:bottom,right:right});new Effect.Scale(photo,scale_to,{scaleContent:false,scaleMode:{originalWidth:width_start,originalHeight:height_start},scaleFrom:scale_from,duration:SS.options.delay,transition:Effect.Transitions.sinoidal});}});Event.observe(window,'load',function(){$$(".slide_show_frame").each(function(ss_widget){new Slide_show(ss_widget.id,{effects:homepage_slideshow_effects_on});});});
