﻿(function($) {

	$(function(){

		var ratingTest = $('#rating_box .extras');
		if(!ratingTest.hasClass('rated')) {

			$('div.story_rating_sleeve').each(function(){starRatingInit.call(this)});

			$('.starRating li a').click(function() {

				var score = $(this).text();
				var targetroot = Config.get('rooturl');
				var target = '/AJAX/rating.aspx?storycode=' + Config.get('ratingpage') + Config.get('storycode');

				$.post(target, {
					rating: score
				},
				function(reply) {
					var ratingContainer = $('#rating_box');
					ratingContainer.html(reply);
				});
			});
		}
	});

	function starRatingInit(){
		$('.current_rating').text('');
		$('a',this).hover(starOver,starOut).click(starSelect).focus(starOver).blur(starOut);
	}

	function starOver(){
		var currentRating = $(this.parentNode.parentNode).children().index(this.parentNode)+1;
		$(this).prevAll('li').andSelf().addClass('over').parents('div.story_rating_sleeve div')
			.children('p.current_rating').text(currentRating+' out of 5 stars');
	}

	function starOut(){
		$(this).parent().parent().parent().next().text('');
	}

	function starSelect(){
		var currentRating = $(this.parentNode.parentNode).children().index(this.parentNode)+1;
		return false;
	}
})(jQuery);