function graph_CarUptime()
{
	if( dojo.byId("carUptimeChart") )
	{
		dojo.require("dojo.collections.Store");
		dojo.require("dojo.charting.Chart");
		dojo.require('dojo.json');

		// week number => days down for that week
		var downtimeDays = [ 1, 7, 7, 7, 0, 1, 3, 7, 7, 7, 7, 0, 0, 2, 5 ];
		
		var today = new Date();
		// July 15, 2006
		var purchaseDate = new Date( 2006, 6, 15 );
		var numberOfWeeksPassed = Math.floor((today.getTime() - purchaseDate.getTime())/(1000*60*60*24*7));
		var json = [ {x: 0, size: 100} ];
		var totalDowntimeDays = 0;
		var max = 0;
		var min = 100;
		var current;
		for( var j = 1; j <= numberOfWeeksPassed; j++ )
		{
			if( downtimeDays[ j - 1 ] ) totalDowntimeDays += downtimeDays[ j - 1 ];
			var percent = Math.floor((j*7 - totalDowntimeDays)*100/(j*7));
			json.push({x: j, size: percent});
		
			if( j == numberOfWeeksPassed ) current = percent;
			if( percent < min ) min = percent;
			if( percent > max ) max = percent;
		}
		
		var store = new dojo.collections.Store();
		store.setData(json);
		
		var s3 = new dojo.charting.Series({ 
			dataSource: store, 
			bindings:{ x: "x", y: "size" },
			label: "Series 3" 
		});
		s3.color = 'green';
		
		var yA = new dojo.charting.Axis();
		yA.range={upper:100,lower:0};
		yA.showLines = true;
		yA.labels = [ {label:max+"% max", value:max }, { label:min+"% min", value:min }, { label: current+'% now', value: current } ];
		
		var xB = new dojo.charting.Axis();
		var temp = numberOfWeeksPassed + 5;
		xB.range={upper:temp,lower:-1};
		xB.showTicks = true;
		xB.origin="max";
		xB.labels = [];
		var increment = Math.floor( temp / 7 );
		for( var j=0; j<temp; j+=increment ) xB.labels.push( j );
		
		var p2 = new dojo.charting.Plot(xB, yA);
		p2.addSeries({ data:s3, plotter: dojo.charting.Plotters.Line });
		
		var pa2 = new dojo.charting.PlotArea();
		pa2.plots.push(p2);
		pa2.size={width:560,height:120};
		pa2.padding={top:0, right:20, bottom:20, left:60 };
		
		var chart = new dojo.charting.Chart(null, "Test chart", "This is a potential description");
		chart.addPlotArea({ x:0,y:0, plotArea:pa2 });

		chart.node = dojo.byId("carUptimeChart");
		chart.render();
	}
}

dojo.addOnLoad( graph_CarUptime );