var MyMarquee=new Class({Implements:[Options,Events],options:{content:"",direction:"left",innerHeight:"20px",step:1,speed:100,loop:true},initialize:function(el,options){if(el){this.content=options.content?options.content:"";this.subject=document.id(el);if(this.subject){this.subject.style.overflow="hidden";}this.direction=options.direction?options.direction:"left";this.step=options.step?options.step:2;this.speed=options.speed?options.speed:10;this.loop=options.loop?options.loop:false;this.subject.innerHTML="";var n=this.subject.adopt(new Element("div",{id:this.subject.id+"_inner",html:(options.content)?options.content:"",styles:{height:(options.innerHeight)?options.innerHeight:this.subject.getStyle("height"),background:"transparent",display:"block"}}));this.textLenX=n.getSize().x+this.subject.getSize().x+200;this.setStartPos()}},moveLeft:function(){var x=$(this.subject.id+"_inner");if(x){x.style.marginLeft=(x.getStyle("marginLeft").toInt()-this.step)+"px"}},moveRight:function(){var x=$(this.subject.id+"_inner");if(x){x.setStyle("marginLeft",(x.getStyle("marginLeft").toInt()+this.step)+"px")}},moveUp:function(){var x=$(this.subject.id+"_inner");if(x){x.setStyle("marginTop",(x.getStyle("marginTop").toInt()-this.step)+"px")}},moveDown:function(){var x=$(this.subject.id+"_inner");if(x){x.setStyle("marginTop",(x.getStyle("marginTop").toInt()+this.step)+"px")}},startPos:function(){var x=document.id(this.subject.id+"_inner");if(x){switch(this.direction){case"left":return[this.subject.getSize().x,0];break;case"right":return[-5,0];break;case"top":break;case"bottom":break;default:return false;break}}},finishPos:function(){var e=$(this.subject.id+"_inner");switch(this.direction){case"left":return[0-this.textLenX,0];break;case"right":return[0,0];break;case"top":break;case"bottom":break;default:return false;break}},innerMarker:function(){var e=document.id(this.subject.id+"_inner");if(e){switch(this.direction){case"left":return[e.getStyle("marginLeft").toInt()+this.textLenX,0];break;case"right":return[e.getStyle("marginLeft").toInt(),0];break;case"top":return[0,e.getStyle("marginTop").toInt()+this.textLenY];break;case"bottom":return[0,0];break;default:return false;break}}else{return false}},moveStep:function(){var x=document.id(this.subject.id+"_inner"),remain=this.innerMarker();switch(this.direction){case"left":this.moveLeft();break;case"right":this.moveRight();break;case"top":this.moveTop();break;case"bottom":this.moveBottom();break}if(remain[0]<=0){if(this.loop){this.fireEvent("loop");this.setStartPos()}else{this.fireEvent("complete")}}else{this.fireEvent("move")}return this},setStartPos:function(){var x=document.id(this.subject.id+"_inner"),from=this.startPos();switch(this.direction){case"left":x.setStyle("marginLeft",from[0]+"px");break;case"right":x.setStyle("marginLeft",from[0]+"px");break;case"top":x.setStyle("marginTop",from[1]+"px");break;case"bottom":x.setStyle("marginTop",from[1]+"px");break}return this},startMove:function(){var inst=this;this.Handler=window.setInterval(function(){inst.moveStep()},inst.speed);return this},stopMove:function(){window.clearInterval(this.Handler);this.Handler=-1;return this}});
