var NUMBER_OF_STARS = 5;
var RATED = false;
var NOLOGIN = false;

function init_rating()
{
	//CREATE ALL IMAGES
	$("div.rating").each(function(){
		var curRating = $(this).text();
		var curDiv = $(this);
		$(this).html("");
		var ids = Array();
		if (curRating < NUMBER_OF_STARS || curRating > 0){
			for(var j=0; j < NUMBER_OF_STARS; j++)
			{
				var widgId = $(this).attr("id").substr(7);
				var starId = "star_"+widgId+"_"+j;
				if( curRating > 0.75 ){
					var curImg = '<img src="/lib/rating/images/stars/rating_on.gif" class="on" id="'+starId+'"/>';
					curRating--;
				} else if(curRating > 0.25) {
					var curImg = '<img src="/lib/rating/images/stars/rating_half.gif" class="half" id="'+starId+'"/>';
					curRating = 0;
				} else {
					var curImg = '<img src="/lib/rating/images/stars/rating_off.gif" class="off" id="'+starId+'"/>';
				}
				$(this).append(curImg);
			}
		}
	});
	
		$("div.member_rating").each(function(){
		var curRating = $(this).text();
		var curDiv = $(this);
		$(this).html("");
		var ids = Array();
		if (curRating < NUMBER_OF_STARS || curRating > 0){
			for(var j=0; j < NUMBER_OF_STARS; j++)
			{
				var widgId = $(this).attr("id").substr(7);
				var starId = "star_"+widgId+"_"+j;
				if( curRating > 0.75 ){
					var curImg = '<img src="/lib/rating/images/stars/rating_on.gif" class="on" id="'+starId+'"/>';
					curRating--;
				} else if(curRating > 0.25) {
					var curImg = '<img src="/lib/rating/images/stars/rating_half.gif" class="half" id="'+starId+'"/>';
					curRating = 0;
				} else {
					var curImg = '<img src="/lib/rating/images/stars/rating_off.gif" class="off" id="'+starId+'"/>';
				}
				$(this).append(curImg);
			}
		}
	});
	
	//BIND EVENTS TO ALL IMAGES IN NEWLY CREATED DIVS
	if( !RATED  && !FUNCAUTHOR ) {
		$("div.rating img").each(function(){
			$(this).hover(
				function(){
					/*Mouse Over*/
					var hoverStarNumber = $(this).attr("id").substr(7);
					var widgetId = $(this).parent().attr("id").substr(7);
					for(i=0;i<NUMBER_OF_STARS;i++){
						var curStar = "#star_"+widgetId+"_"+i;
						if( i<=hoverStarNumber ) $(curStar).attr("src","/lib/rating/images/stars/rating_over.gif");
						else $(curStar).attr("src","/lib/rating/images/stars/rating_off.gif");
					}
				},
				function(){
					/*Mouse Out*/
					$(this).parent().find("img").each(function(){
						$(this).attr("src","/lib/rating/images/stars/rating_"+$(this).attr("className")+".gif");
				});
			}).click(function(){
				var clickedStarNumber = $(this).attr("id").substr(7);
				var widgetId = $(this).parent().attr("id").substr(7);
				var authorId = $(this).parent().next().text();
				var functionId = $(this).parent().next().next().text();
				var raterId = $(this).parent().next().next().next().text();
				for(i=0;i<=clickedStarNumber;i++){
					var curStar = "#star_"+widgetId+"_"+i;
					$(curStar).attr("src","/lib/rating/images/stars/rating_on.gif").attr("className","on");
				}
				$(this).parent().find("img").unbind();
				
				//SEND AJAX REQUEST
				$.get("/submission/function_submit_rating.php",{authorId: authorId, functionId: functionId, value: parseInt(clickedStarNumber)+1},
					function(data){
						alert("Thanks for rating this function!");
						RATED = true;
					}
				);
				
			});
		});
	} else if ( NOLOGIN ) {
		$("div.rating img").click(function(){
			alert("You cannot rate a function unless you are logged in"); 					   
		});
	} else if ( RATED ) {
		$("div.rating img").click(function(){
			alert("You've already rated this function"); 					   
		});
	} else if ( FUNCAUTHOR ) {
		$("div.rating img").click(function(){
			alert("You can't rate your own function - it's impolite..."); 					   
		});
	}
}
