(function($){
  $.fn.highlight_linked_cells = function(options){
    var options = $.extend({}, $.fn.highlight_linked_cells.defaults, options || {});
    return this.each(function(){
      var table = $(this);
      var cells = table.find('td[class^='+options.prefix+']');
      cells.each(function(){
        var cell = $(this);
        var cell_class = cell.attr('class');
        var links = table.find('.'+cell_class);
        cell.hover(
          function(){ if(links.length > 1) links.addClass(options.css_class);           },
          function(){ table.find('.'+options.css_class).removeClass(options.css_class); }
        );
      });
    });
  };
  $.fn.highlight_linked_cells.defaults = {
    prefix: 'id',
    css_class: 'highlight'
  };
  
  $(document).ready(function(){
    $('#top_users_widget, #top_players_widget').highlight_linked_cells();
  });
})(jQuery);
