		
		jQuery(window).bind("load", function(){		
		
		jQuery("div.equipment_user_rating").each(function(){		
		jQuery(this).find("a.user_rate_stars_on, a.user_rate_stars_half, a.user_rate_stars_off, a.user_rate_stars_over").each(
		function(){
			
			jQuery(this).mouseover(function(){
				
				var rate_parts = jQuery(this).attr('id').split("_");
				i=1;
				while(i<=rate_parts[2]){
					jQuery("#"+ rate_parts[0]+"_"+rate_parts[1]+"_"+i).addClass('user_rate_stars_over');
					i++;
				}					
				while(i<=5){
					jQuery("#"+ rate_parts[0]+"_"+rate_parts[1]+"_"+i).removeClass('user_rate_stars_over');
					i++;
				}
			});
			jQuery(this).mouseout(function(){
				i=1;
				var rate_parts = jQuery(this).attr('id').split("_");
				while(i<=5){
					jQuery("#"+ rate_parts[0]+"_"+rate_parts[1]+"_"+i).removeClass('user_rate_stars_over');
					i++;
				}});
			jQuery(this).click(
					
				function(){								
						
						star_id = jQuery(this).attr('id');
						var rate_parts = star_id.split("_");
			            var item_id =	rate_parts[1];
			           	var rate 	 =	rate_parts[2];		
			           	
						if(item_rated(item_id)){
							
							alert("It appears that you have already rated this item.");
							return false;
						}
						jQuery(this).parent().parent().find(".rate_value").remove();
						ref=jQuery(this).parent().after("<div class='rate_value'>Please wait....</div>");
						jQuery.post("/equipment/userrate",{itemId:item_id, rating:rate },
						function(response,textStatus){	
						
							var avg_rating = response.avg_rating;
							
							if(parseInt(response.status)==-1){
								alert("It appears that you have already rated this item.");
							}
							else{									
								i=1;							
								//highlight stars									
								while(i <= avg_rating){
									jQuery("#"+ rate_parts[0] +"_"+ rate_parts[1] +"_"+ i).attr('class','user_rate_stars_on');
										i++;											
								}	
								//half stars highlight
								if((avg_rating * 10)%10 >=5 ){
									jQuery("#"+ rate_parts[0] +"_"+ rate_parts[1] +"_"+ i).attr('class','user_rate_stars_half');
									i++;
								}									
												
								//dim stars
								while(i<=5){
									jQuery("#"+ rate_parts[0]+"_"+ rate_parts[1] +"_"+ i).attr('class','user_rate_stars_off');
									i++;
								}										
							}		
							jQuery("#"+ star_id).parent().parent().find(".rate_value").html("Average rating: "+ avg_rating);	
						}
					,"json");												
					});
				});
	});
});

function item_rated(item_id){
	
str_rated_items = readUserRatingCookie('[equipment_rated]');

if(str_rated_items!=""){
	items = str_rated_items.split(",");
	if(jQuery.inArray(item_id, items)>=0){
		return true;
	}
	else{
		return false;
	}
			
}
return false;
}

function readUserRatingCookie(name){


	
	  var cookieValue = "";
	  var search = name + "=";
	  if(document.cookie.length > 0) { 
	    offset = document.cookie.indexOf(search);
	    if (offset != -1){ 
	      offset += search.length;
	      end = document.cookie.indexOf(";", offset);
	      if (end == -1) end = document.cookie.length;
	      cookieValue = unescape(document.cookie.substring(offset, end))
	    }
	  }
	  return cookieValue;
	}

