// protoype check
if (typeof(Prototype) == 'undefined') { throw('Prototype not loaded'); }

// globals
var rating_submitted = false;

// showRating function
function showRating(num, perm) {
	// already rated?
	if (rating_submitted) { return; }
	
	// permanent?
	if (perm) {
		rating_submitted = true;
	}
	
	// change star classes
	for (var i = 1; i <= 5; i++) {
		if (num == 0) {
			$('rating-star-' + i).removeClassName('temp-white');
			$('rating-star-' + i).removeClassName('hover');
		} else if (i <= num) {
			$('rating-star-' + i).addClassName('hover');
			$('rating-star-' + i).removeClassName('temp-white');
		} else {
			$('rating-star-' + i).removeClassName('hover');
			if (perm) {
				$('rating-star-' + i).removeClassName('marked');
			} else {
				$('rating-star-' + i).addClassName('temp-white');
			}
		}
	}
}

// submitRating function
function submitRating(type, type_id, rating) {
	// validate
	if (!type || !type_id || !rating) { return false; }
	
	rating_submitted = false;
	
	// submit ajax
	new Ajax.Request(
		'/ajax_submit_rating.php',
		{
			method: 'post',
			parameters: {
				form_action: 'submit_rating',
				type:        type,
				type_id:     type_id,
				rating:      rating
		},
		onSuccess: function() {
			showRating(rating, true);
		}
	});
	
	return false;
}

