$(document).ready(function() {
	var labels = {star : ['Poor', 'Sufficient', 'Good', 'Great', 'Excellent'],
		level: ['Beginner', 'Intermediate', 'Advanced']};
	
	$('.star_rating, .level_rating').each(function() {
		var rating = this;
		var kind = $(this).is('.star_rating') ? 'star' : 'level';
		var label = $(this).next('.rating_label');
		var o = rating.className;
		var ol = label.html();
		$('a', rating).each(function(i) {
			$(this).mouseover(function() {
				rating.className = kind + '_rating ' + kind + '_marked' + (i+1);
				label.html(labels[kind][i]);
			}).mouseout(function() {
				rating.className = o;
				label.html(ol);
			}).click(function() {
				o = kind + '_rating ' + kind + '_rated' + (i+1);
				ol = labels[kind][i];
				$.get($(this).attr('href') + '&ajax', null, function(s) {
					var a = s.split(',');
					if (a.length == 2) {
						rating.className = o = kind + '_rating ' + kind + '_rated' + a[0];
						label.html(ol = labels[kind][a[0]-1] + a[1]);
					}
				});
				return false;
			});
		});
	});
});
