var mTheatre=new Class({initialize:function(B,A){this.setOptions({transitionPrev:Fx.Transitions.linear,transitionNext:Fx.Transitions.linear,duration:300,direction:"forward",automation:false,pauseDuration:5000,links:true,linkImageLeft:null,linkImageLeftHover:null,linkImageRight:null,linkImageRightHover:null},A);this.theatre=$(B);this.children=this.theatre.getChildren();this.theatre.setStyle("overflow","hidden");this.size=this.theatre.getSize()["size"];this.currentPosition=0;this.delay=null;this.naviLeft=null;this.naviRight=null;this.prepare();if(this.options.automation){if(this.options.direction=="forward"){$clear(this.delay);this.delay=this.next.bind(this).delay(this.options.pauseDuration)}else{$clear(this.delay);this.delay=this.prev.bind(this).delay(this.options.pauseDuration)}}},prepare:function(){this.theatre.getChildren().each(function(B){B.remove()});this.animationScene=new Element("div");this.animationScene.setStyles({display:"block",width:(this.size.x*2),height:this.size.y,"float":"left"});this.animationScene.injectInside(this.theatre);this.children.each(function(B){B.setStyles({display:"block",width:this.size.x,height:this.size.y,"float":"left",overflow:"hidden"})}.bind(this));var A=this.children[0].clone();A.injectInside(this.animationScene);this.currentElement=A;if(this.options.links){this.prepareLinks()}},addLinkEvents:function(){if(this.options.links==true){this.naviLeft.addEvents({click:function(){this.prev()}.bind(this),mouseover:function(){this.naviMouseOver(this.options.linkImageLeft,this.options.linkImageLeftHover,this.naviLeft)}.bind(this),mouseout:function(){this.naviMouseOut(this.options.linkImageLeft,this.options.linkImageLeftHover,this.naviLeft)}.bind(this)});this.naviRight.addEvents({click:function(){this.next()}.bind(this),mouseover:function(){this.naviMouseOver(this.options.linkImageRight,this.options.linkImageRightHover,this.naviRight)}.bind(this),mouseout:function(){this.naviMouseOut(this.options.linkImageRight,this.options.linkImageRightHover,this.naviRight)}.bind(this)})}},removeLinkEvents:function(){if(this.options.links==true){this.naviLeft.removeEvents();this.naviRight.removeEvents()}},prepareLinks:function(){this.naviLeft=new Element("a");this.naviLeft.href="javascript: void(0);";if(this.options.linkImageLeft!=null&&this.options.linkImageLeftHover==null){var A="0.5"}if(this.options.linkImageLeft!=null&&this.options.linkImageLeftHover!=null){var A="1.0"}this.naviLeft.setStyles({display:"block",width:(Math.round(this.size.x*0.15)+"px"),height:this.size.y,backgroundColor:"transparent",position:"absolute",zIndex:"20",top:this.theatre.getTop(),left:this.theatre.getLeft(),opacity:A,backgroundImage:"url("+this.options.linkImageLeft+")",backgroundPosition:"center center",backgroundRepeat:"no-repeat",outline:"none"});this.naviLeft.injectInside(document.body);this.naviRight=new Element("a");this.naviRight.href="javascript: void(0);";if(this.options.linkImageRight!=null&&this.options.linkImageRightHover==null){var A="0.5"}if(this.options.linkImageRight!=null&&this.options.linkImageRightHover!=null){var A="1.0"}this.naviRight.setStyles({display:"block",width:(Math.round(this.size.x*0.15)+"px"),height:this.size.y,backgroundColor:"transparent",position:"absolute",zIndex:"20",top:this.theatre.getTop(),left:((this.theatre.getLeft()+this.size.x-Math.round(this.size.x*0.15))+"px"),opacity:A,backgroundImage:"url("+this.options.linkImageRight+")",backgroundPosition:"center center",backgroundRepeat:"no-repeat",outline:"none"});this.naviRight.injectInside(document.body);this.addLinkEvents()},naviMouseOver:function(B,C,A){if(B!=null&&C==null){A.setStyles({opacity:"1"})}if(C!=null){A.setStyles({backgroundImage:"url("+C+")"})}},naviMouseOut:function(B,C,A){if(B!=null&&C==null){A.setStyles({opacity:"0.5"})}if(C!=null){A.setStyles({backgroundImage:"url("+B+")"})}},next:function(){this.removeLinkEvents();if(this.options.automation){$clear(this.delay)}var B=this.currentPosition+1;if(B>=this.children.length){B=0}this.currentElement.setStyles({zIndex:10});var D=this.children[B].clone();D.setStyles({opacity:1,zIndex:1000});D.injectInside(this.animationScene);var C={nextPos:B,newElement:D,obj:this};var A=null;A=new Fx.Styles(this.currentElement,{duration:this.options.duration,transition:this.options.transitionNext});A.start({width:"0px",opacity:0}).chain(function(){C.obj.currentElement.remove();C.obj.currentPosition=C.nextPos;C.obj.currentElement=C.newElement;C.obj.currentElement.setStyles({display:"block",width:C.obj.size.x,height:C.obj.size.y,"float":"left"});if(C.obj.options.automation){if(C.obj.options.direction=="forward"){$clear(C.obj.delay);C.obj.delay=C.obj.next.bind(C.obj).delay(C.obj.options.pauseDuration)}else{$clear(C.obj.delay);C.obj.delay=C.obj.prev.bind(C.obj).delay(C.obj.options.pauseDuration)}}C.obj.addLinkEvents()}.bind(C))},prev:function(){this.removeLinkEvents();if(this.options.automation){$clear(this.delay)}var C=this.currentPosition-1;if(C<0){C=(this.children.length-1)}var E=this.children[C].clone();E.setStyles({width:"0px",opacity:1});E.injectBefore(this.currentElement);var D={nextPos:C,newElement:E,obj:this};var B=new Fx.Styles(E,{duration:this.options.duration,transition:this.options.transitionPrev});var A=new Fx.Styles(this.currentElement,{duration:this.options.duration,transition:this.options.transitionPrev});A.start({opacity:0});B.start({width:this.size.x}).chain(function(){D.obj.currentElement.remove();D.obj.currentPosition=D.nextPos;D.obj.currentElement=D.newElement;if(D.obj.options.automation){if(D.obj.options.direction=="forward"){$clear(D.obj.delay);D.obj.delay=D.obj.next.bind(D.obj).delay(D.obj.options.pauseDuration)}else{$clear(D.obj.delay);D.obj.delay=D.obj.prev.bind(D.obj).delay(D.obj.options.pauseDuration)}}D.obj.addLinkEvents()}.bind(D))}});mTheatre.implement(new Options);