Ticker=Class.create({element:null,currentItem:-1,items:[],timer:null,populateItems:Prototype.emptyFunction,animate:Prototype.emptyFunction,initialize:function(b,a){this.element=$(b);if(!this.element){throw (s2.fx.elementDoesNotExistError);return false}this.options=Object.extend({transitionDuration:1,pauseDuration:1,transition:"sinusoidal"},a);this.buildTicker()},buildTicker:function(){this.populateItems();if(this.items.length<2){return}this.start()},start:function(){this.timer=new PeriodicalExecuter(this.next.bind(this),this.options.pauseDuration+this.options.transitionDuration)},stop:function(){this.timer.stop()},next:function(){this.currentItem=(this.currentItem>=this.items.length-1)?0:this.currentItem+1;this.animate()}});HtmlTicker=Class.create(Ticker,{initialize:function($super,b,a){$super(b,a)},populateItems:function(){this.items=this.element.childElements()},animate:function(){this.items.each(function(b,a){if(this.currentItem!=a){b.hide()}else{b.show()}}.bind(this))}});ImageTicker=Class.create(Ticker,{fetchedItems:[],initialize:function($super,b,a){$super(b,a)},populateItems:function(){new Ajax.Request(this.options.imagesLink,{method:"get",onSuccess:function(a){this.items=a.responseJSON.photos;this.next();this.start()}.bind(this)})},animate:function(){var a=this.element.cloneWithoutIDs().setOpacity(0);this.element.insert({after:a});a.setStyle({backgroundImage:"url("+this.items[this.currentItem]+")"});new s2.fx.Parallel([new s2.fx.Morph(this.element,{style:"opacity:0"}),new s2.fx.Morph(a,{style:"opacity:1"})],{duration:this.options.transitionDuration,transition:this.options.transition,after:function(){temp=this.element;this.element=a;temp.remove()}.bind(this,a)}).play()},prefetchItem:function(b){this.stop();var a=new Image();a.src=b;a.onload=(function(){this.fetchedItems.push(this.items[this.currentItem]);this.animate();this.timer.registerCallback()}).bind(this)}});WordTicker=Class.create(Ticker,{colorindex:1,initialize:function($super,b,a){$super(b,a)},populateItems:function(){new Ajax.Request(this.options.itemsLink,{method:"get",onSuccess:function(a){this.items=a.responseJSON.madinatunais[document.getElementsByTagName("html")[0].lang];this.next();this.start()}.bind(this)})},animate:function(){this.element.morph("opacity:0",{duration:this.options.transitionDuration,after:function(){this.element.innerHTML=this.items[this.currentItem];this.element.setStyle({color:App.colorsL[this.colorindex]});this.colorindex=(this.colorindex==App.colorsL.length-1)?1:this.colorindex+1;this.element.morph("opacity:1",{duration:this.options.transitionDuration})}.bind(this)})},next:function(){var a=this.currentItem;while(a==this.currentItem){a=Math.floor(Math.random()*this.items.length)}this.currentItem=a;this.animate()}});JsonTicker=Class.create(Ticker,{initialize:function($super,b,a){$super(b,a)},populateItems:function(){new Ajax.Request(this.options.feedURL,{method:"get",onSuccess:function(a){this.items=a.responseJSON.activities;this.next();this.start()}.bind(this)})},animate:function(){this.element.morph("top:-220px",{duration:this.options.transitionDuration,transition:"easeInOutBack",after:function(){title=this.items[this.currentItem].name.strip();descr=this.items[this.currentItem].summary;link=this.items[this.currentItem].link;this.element.update("<p><b>"+title+": </b>"+descr+"</p>");this.element.morph("top:0px",{duration:this.options.transitionDuration,transition:"easeInOutBack"})}.bind(this)})}});
