window.onload = function(){
	
	var bars = new Array();
	var maxWidths = new Array();
	var currWidths = new Array();
	var isComplete = new Array();
	
	var barWidth;
	var padding = 4;
	var i = 0;
	
	var elements = document.getElementsByTagName("div");
	
	for(var e in elements){
		
		if(elements[e].className=="rating_bar"){
			
			if(i==0){ barWidth = elements[e].offsetWidth; }
			
			bars[i] = elements[e];
			maxWidths[i] = bars[i].innerHTML*(bars[i].offsetWidth/100);
			bars[i].style.width = currWidths[i] = 0;
			bars[i].style.visibility = "visible";
			i++;
		}
	}
	
	var intervalID = setInterval(animate, 20);
	
	function animate(){		
		
		for(var i in bars){
				
			if(isComplete[i]) continue;
			
			bars[i].innerHTML = Math.round(bars[i].offsetWidth/barWidth*100) + "%";
			currWidths[i] += (maxWidths[i]-currWidths[i])/20;
			bars[i].style.width = currWidths[i] + "px";
			
			if(currWidths[i] >= maxWidths[i]-padding){
				
				bars[i].style.width = maxWidths[i]-padding + "px";
				bars[i].innerHTML = Math.round(maxWidths[i]/barWidth*100) + "%";
				isComplete[i] = true;
				
				var cc = 0;
				for(k in isComplete) if (isComplete[k]) cc++;
				if (cc >= isComplete.length) clearInterval(intervalID);
			}
			
		}
	}
	
}