var CarbonTicker = new Class(
{
	initialize: function()
	{
		/*var timeStamps = $$('span.cttimestamp');
		var i=0;
		for(i=0; i<timeStamps.length; i++)
		{
			
		}*/
		
		this.tickTock.periodical(1000);
		//this.tickTock();
	},
	
	tickTock: function()
	{
		var myDate=new Date();
		var startDate=new Date();
		var endDate=new Date();
		
		var timeStamps = $$('span.cttimestamp');
		for(i=0; i<timeStamps.length - 1; i++)
		{
			startDate.setTime(timeStamps[i].get('text') * 1000);
			endDate.setTime(timeStamps[i + 1].get('text') * 1000);
			if(myDate >= startDate && myDate < endDate)
			{
				var startTimeStampID = timeStamps[i].id.split('_')[1];
				var endTimeStampID = timeStamps[i + 1].id.split('_')[1];
				var startForestSink = $('ctforestsink_' + startTimeStampID).get('text');
				var endForestSink = $('ctforestsink_' + endTimeStampID).get('text');
				var startNationalEmissions = $('ctnationalemissions_' + startTimeStampID).get('text');
				var endNationalEmissions = $('ctnationalemissions_' + endTimeStampID).get('text');
				
				var elapsed = (myDate - startDate) / 1000;
				
				var forestSinkThisHour = parseFloat(endForestSink) - parseFloat(startForestSink);
				var nationalEmissionsThisHour = parseFloat(endNationalEmissions) - parseFloat(startNationalEmissions);
				
				var forestSinkPerSecond = forestSinkThisHour / (30 * 60);
				var forestSinkNow = forestSinkPerSecond * elapsed;
				
				var nationalEmissionsPerSecond = nationalEmissionsThisHour / (30 * 60);
				var nationalEmissionsNow = nationalEmissionsPerSecond * elapsed;
				
				$('outputforestsink').set('text', parseFloat(startForestSink) + forestSinkNow);
				$('outputnationalemissions').set('text', parseFloat(startNationalEmissions) + nationalEmissionsNow);
				$('outputdeficit').set('text', parseFloat(startForestSink) + parseFloat(forestSinkNow) + parseFloat(startNationalEmissions + nationalEmissionsNow));
			}
		}
	}
});

window.addEvent('domready', function()
{
	var carbonTicker = new CarbonTicker();
});