        
        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;
    }

