var slideshow_class=function(){this.cardwidth=0;this.cardwidth_modifier=0,this.cardwidth_total=0,this.slider_id="";this.cardwrap=null;this.animate=false;this.loop=false;this.card_list=[];this.actual_counter_position=0;this.leftbutton=null;this.rightbutton=null;this.inactivebutton_class=""};slideshow_class.prototype={construct:function(A){for(i in A){this[i]=A[i]}this.cardwidth_total=this.cardwidth+this.cardwidth_modifier;this.cardwrap=Dom.get(this.slider_id+"_cardwrap");this.cards_length=this.cards_length||1;var B=1;while(Dom.get(this.slider_id+"_item_"+B)){this.card_list.push(Dom.get(this.slider_id+"_item_"+B));B++}this.leftbutton=Dom.get(this.slider_id+"_leftbutton");this.rightbutton=Dom.get(this.slider_id+"_rightbutton")},getActLeft:function(){return parseInt(Dom.getStyle(this.cardwrap,"left"))||0},setLeft:function(A){Dom.setStyle(this.cardwrap,"left",A+"px");return true},setLeftBy:function(C){var B=this.getActLeft();var A=B+C;Dom.setStyle(this.cardwrap,"left",A+"px");return true},increaseCounter:function(){if(this.actual_counter_position==this.card_list.length-this.cards_length+1){this.actual_counter_position=0}else{this.actual_counter_position++}return true},decreaseCounter:function(){if(this.actual_counter_position==0){this.actual_counter_position=this.card_list.length-1}else{this.actual_counter_position--}return true},stepLeft:function(){this.moveLast();Dom.removeClass(this.rightbutton,this.inactivebutton_class);if(this.actual_counter_position==0&&!this.loop){return false}if(this.actual_counter_position==1&&!this.loop){Dom.addClass(this.leftbutton,this.inactivebutton_class)}this.setLeftBy(this.cardwidth_total);this.decreaseCounter();return true},beforeStepRight:function(){this.moveFirst();Dom.removeClass(this.leftbutton,this.inactivebutton_class);if(this.actual_counter_position==this.card_list.length-this.cards_length&&!this.loop){return false}if(this.actual_counter_position==this.card_list.length-1-this.cards_length&&!this.loop){Dom.addClass(this.rightbutton,this.inactivebutton_class)}return true},stepRight:function(){if(!this.beforeStepRight()){return false}this.setLeftBy(-this.cardwidth_total);this.increaseCounter();return true},moveFirst:function(){if(!this.loop){return false}if(this.actual_counter_position==this.card_list.length-this.cards_length){Dom.insertAfter(this.card_list[0],this.card_list[this.card_list.length-1]);this.card_list.push(this.card_list.shift());this.setLeftBy(this.cardwidth_total);this.decreaseCounter()}return true},moveLast:function(){if(!this.loop){return false}if(this.actual_counter_position==0){Dom.insertBefore(this.card_list[this.card_list.length-1],this.card_list[0]);this.card_list.unshift(this.card_list.pop());this.setLeftBy(-this.cardwidth_total);this.increaseCounter()}return true},is_animating:false,animation_obj:null,left_anim:null,stepLeftAnim:function(){if(this.is_animating){return false}this.moveLast();Dom.removeClass(this.rightbutton,this.inactivebutton_class);if(this.actual_counter_position==1&&!this.loop){Dom.addClass(this.leftbutton,this.inactivebutton_class)}if(this.actual_counter_position==0&&!this.loop){return false}if(!this.left_anim){var A=this.cardwidth_total;this.left_anim=this.left_anim||new YAHOO.util.Anim(this.cardwrap,{left:{by:A}},this.animation_time/1000);this.left_anim.onComplete.subscribe(this.stepLeftAnimCallback,this,true)}this.is_animating=true;this.animation_obj=this.left_anim;this.left_anim.animate();return true},stepLeftAnimCallback:function(){this.decreaseCounter();this.animation_obj=null;this.is_animating=false;return true},right_anim:null,stepRightAnim:function(){if(this.is_animating){return false}this.moveFirst();Dom.removeClass(this.leftbutton,this.inactivebutton_class);if(this.actual_counter_position==this.card_list.length-this.cards_length&&!this.loop){return false}if(this.actual_counter_position==this.card_list.length-1-this.cards_length&&!this.loop){Dom.addClass(this.rightbutton,this.inactivebutton_class)}if(!this.right_anim){var A=-this.cardwidth_total;this.right_anim=this.right_anim||new YAHOO.util.Anim(this.cardwrap,{left:{by:A}},this.animation_time/1000);this.right_anim.onComplete.subscribe(this.stepRightAnimCallback,this,true)}this.is_animating=true;this.animation_obj=this.right_anim;this.right_anim.animate();return true},stepRightAnimCallback:function(){this.increaseCounter();this.animation_obj=null;this.is_animating=false;return true}};var slideshow_advanced_class=function(A){slideshow_class.call(this,A);this.is_during_delay=false;this.delay_obj=null;this.slide_is_running=false};slideshow_advanced_class.prototype=new slideshow_class();slideshow_advanced_class.prototype.constructor=slideshow_class;slideshow_advanced_class.prototype.stepRight=function(){if(!this.beforeStepRight()){return false}this.setLeftBy(-this.cardwidth_total);this.increaseCounter();if(this.slide_is_running){var A=this;this.delay_obj=window.setTimeout(function(){A.stepRight.call(A)},this.delay_time)}return true};slideshow_advanced_class.prototype.stepRightAnimCallback=function(){this.increaseCounter();this.animation_obj=null;this.is_animating=false;if(this.slide_is_running){var A=this;this.delay_obj=window.setTimeout(function(){A.stepRightAnim.call(A)},this.delay_time)}return true};slideshow_advanced_class.prototype.toggleSlide=function(){if(this.slide_is_running){Dom.replaceClass(Dom.get(this.slider_id+"_startbtn"),"stop","start");this.slide_is_running=false;if(this.delay_obj){window.clearTimeout(this.delay_obj)}}else{if(this.is_animating){return false}else{Dom.replaceClass(Dom.get(this.slider_id+"_startbtn"),"start","stop");this.slide_is_running=true;if(this.slide_is_animated){this.stepRightAnim()}else{this.stepRight()}}}};slideshow_advanced_class.prototype.goToPic=function(A){if(this.slide_is_running){this.toggleSlide()}else{if(this.is_animating){this.animation_obj.stop();this.is_animating=false}}if(this.animation_obj){this.animation_obj.stop();this.is_animating=false}var B=0;for(i_cards=0;i_cards<this.card_list.length;i_cards++){var C=this.card_list[i_cards];if(C.id.split("_")[3]==A){B=i_cards;break}}this.actual_counter_position=B;this.setLeft(-1*B*this.cardwidth_total);return true};
