Effect.DefaultOptions.duration = 0.3;
NewsTicker = Class.create();
Object.extend(NewsTicker.prototype, {
	tickerTitle: "news",
	pauseLength: 3500,
	timer: 0,
	currentTitle: 0,
	items: [],
	initialize: function() {
		for (i=0;i<document.getElementById("newslist").getElementsByTagName("span").length;i++)
		{
		    this.items.push(document.getElementById("newslist").getElementsByTagName("span")[i].innerHTML);  
		}
		this.buildTicker();
	},
	
	buildTicker: function() {
		if (this.items[this.currentTitle]) {
			$(this.tickerTitle).innerHTML = this.items[this.currentTitle];
			this.start();
		}
	},
	
	start: function() {
		this.interval = setInterval(this.showNext.bind(this), this.pauseLength);
	},
	
	stop: function() {
		clearInterval(this.interval)
	},
	
	showNext: function() {
		if ( this.currentTitle < this.items.length-1 ) {
			this.currentTitle = this.currentTitle+1;
		} else {
			this.currentTitle = 0;
		}
		
		new Effect.Fade('news', {
			afterFinish: function() {
				this.switchData();
				new Effect.Appear('news'); }.bind(this)});

	},
	
    switchData: function() {
		if (this.items[this.currentTitle]) {
			$(this.tickerTitle).innerHTML = this.items[this.currentTitle];
		}
	}
});

Event.observe(window, 'load', function() {
	var ticker = new NewsTicker();
});
