Event.observe(window, 'load', function() {
	if ($('banner_info')) BannerInfo.init();
});

var BannerInfo = {
	facts: false,
	factsentences: [
		// Driving
		function() {
			if (BannerInfo.facts.driving == 0) return "Er rijden op dit moment geen voertuigen";
			if (BannerInfo.facts.driving == 1) return "Er rijdt op dit moment &eacute;&eacute;n voertuig";
			else return "Er rijden op dit moment "+ BannerInfo.facts.driving + " voertuigen";
		},
		
		// Speeding
		function() {
			if (BannerInfo.facts.speeding == 0) return "Niemand rijdt te hard op de snelweg";
			if (BannerInfo.facts.speeding == 1) return "E&eacute;n rijdt te hard op de snelweg";
			else return BannerInfo.facts.speeding + " rijden te hard op de snelweg";
		},
		
		// Stationary
		function() {
			if (BannerInfo.facts.running_stationary == 0) return "Geen voertuig draait stationair";
			if (BannerInfo.facts.running_stationary == 1) return "E&eacute;n voertuig draait stationair";
			else return BannerInfo.facts.running_stationary + " voertuigen draaien stationair";
		},
		
		// Highest_speed
		function() {
			return "Het snelste voertuig rijdt nu "+ BannerInfo.facts.highest_speed + " km/uur";
		},
		
		// Driver ID
		function() {
			if (BannerInfo.facts.driverid_signedon == 0) return "Geen bestuurders zijn met Driver ID aangemeld";
			if (BannerInfo.facts.driverid_signedon == 1) return "E&eacute;n bestuurder is met Driver ID aangemeld";
			return BannerInfo.facts.driverid_signedon + " bestuurders zijn met Driver ID aangemeld";
		},

		// Business
		function() {
			return Math.round(BannerInfo.facts.driving_business*100/BannerInfo.facts.driving) + "% van de ritten op dit moment is zakelijk";
		},
		
		// Direction
		function() {
			if (BannerInfo.facts.driving_direction_most_to == "N") return "De meesten rijden in Noordelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "NE") return "De meesten rijden in Noordelijke-Oostelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "E") return "De meesten rijden in Oostelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "SE") return "De meesten rijden in Zuid-Oostelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "S") return "De meesten rijden in Zuidelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "SW") return "De meesten rijden in Zuid-Westelijke richting";
			if (BannerInfo.facts.driving_direction_most_to == "W") return "De meesten rijden in Westelijke richting";
			return "De meesten rijden in Noord-Westelijke richting";
		}
	],

	init: function() 
	{	
		BannerInfo.updateFacts(true);
		new PeriodicalExecuter(BannerInfo.updateFacts, 30);
	},
	
	updateFacts: function(first)
	{
		new Ajax.Request('/extern/facts/facts_json.php', {
  			onComplete: function(response) {
  				BannerInfo.facts = response.responseJSON.facts;
  				if (first == true) BannerInfo.initBalloons();
    		}
		});
	},
	
	initBalloons: function()
	{
		BannerInfo.nextBalloon();
		new PeriodicalExecuter(BannerInfo.nextBalloon, 5);
	},
	
	current: false,
	content_i: 0,
	nextBalloon: function()
	{	
		var next = $('banner_balloon_'+ ((Math.ceil(Math.random()*100)%6)+1));		
		var content = BannerInfo.factsentences[BannerInfo.content_i];
		BannerInfo.content_i++;
		
		if (BannerInfo.content_i > BannerInfo.factsentences.size()-1) BannerInfo.content_i = 0;

		if (BannerInfo.current != next) {
			if (BannerInfo.current) {
				if (Prototype.Browser.IE) BannerInfo.current.hide();
				else BannerInfo.current.fade();
			}
			next.down('td').update(content());
			if (Prototype.Browser.IE) next.show();
			else next.appear();
					
		} else {
			next.down('td').update(content());
		}

		BannerInfo.current = next;
	}
	
		
}
