Filter oper.ru comments by user's name

enter something useful

  1. // ==UserScript==
  2. // @name Filter oper.ru comments by user's name
  3. // @namespace http://your.homepage/
  4. // @version 0.1
  5. // @description enter something useful
  6. // @author You
  7. // @match http://oper.ru/*read.php*
  8. // @grant none
  9. // @locale en
  10. // ==/UserScript==
  11.  
  12.  
  13. $(document).ready(function() {
  14. 'use strict';
  15.  
  16. var otherCommentsHidden = false;
  17.  
  18. function getUsername(commentTable) {
  19. return $(commentTable).find('a:first').text().trim();
  20. }
  21.  
  22. function iterateComments(markHidden, usernameToDisplay) {
  23. $('.comment').each(function(index, commentTable) {
  24. var username = getUsername(commentTable);
  25.  
  26. if (markHidden && usernameToDisplay != username) {
  27. $(commentTable).hide();
  28. }
  29. else if (!markHidden) {
  30. $(commentTable).show();
  31. }
  32. });
  33. otherCommentsHidden = !otherCommentsHidden;
  34. }
  35.  
  36. $('.comment').each(function(index, commentTable) {
  37. var username = getUsername(commentTable);
  38. $(commentTable).find('a:first').after('<a id="filterUserName">+</a>'); // Add link for filter
  39. $(commentTable).find('#filterUserName').click(function() {
  40. iterateComments(!otherCommentsHidden, username);
  41. });
  42. });
  43.  
  44. });