MTurk Dashboard HIT Status links

Adds quick links to rejected and pending hits

  1. // ==UserScript==
  2. // @name MTurk Dashboard HIT Status links
  3. // @namespace localhost
  4. // @author ThirdClassInternationalMasterTurker
  5. // @description Adds quick links to rejected and pending hits
  6. // @include https://www.mturk.com/mturk/dashboard
  7. // @version 1.1
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. //
  12. // 2012-09-07 First public release by ThirdClassInternationalMasterTurker
  13. //
  14. // 2012-12-02 1.1 Added @downloadURL and @updateURL
  15. //
  16.  
  17. // --- SETTINGS ------------------------------------------------------- //
  18. var USE_COLOURS = true;
  19. var USE_PENDING_LIMITS = true;
  20.  
  21. var LIMIT_GOOD = 0;
  22. var LIMIT_OK = 1000;
  23.  
  24. var COLOUR_GOOD_ODD = '#44DD44';
  25. var COLOUR_GOOD_EVEN = '#88EE88';
  26. var COLOUR_OK_ODD = '#FFFF66';
  27. var COLOUR_OK_EVEN = '#FFFFAA';
  28. var COLOUR_BAD_ODD = '#FF5555';
  29. var COLOUR_BAD_EVEN = '#FF8888';
  30.  
  31. // -------------------------------------------------------------------- //
  32.  
  33. var rows = document.evaluate('//tr[@class]',
  34. document,
  35. null,
  36. XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
  37.  
  38. for (var i=0;i<rows.snapshotLength;i++) {
  39. var row = rows.snapshotItem(i);
  40.  
  41. if (row.cells.length != 6)
  42. continue;
  43. if (row.className.match('odd|even') == null) {
  44. continue;
  45. }
  46.  
  47. var odd = row.className.match('odd');
  48. var approved = parseInt(row.cells[2].innerHTML);
  49. var rejected = parseInt(row.cells[3].innerHTML);
  50. var pending = parseInt(row.cells[4].innerHTML);
  51. //var earnings = row.cells[5].childNodes[0].innerHTML;
  52. //var dollars = parseFloat(earnings.slice(earnings.search('\\$')+1));
  53.  
  54. if (approved > 0) {
  55. row.cells[2].innerHTML = '<a href="' + row.cells[0].childNodes[1].href + '&sortType=Approved">' + approved + '</a>';
  56. }
  57. if (rejected > 0) {
  58. row.cells[3].innerHTML = '<a href="' + row.cells[0].childNodes[1].href + '&sortType=Rejected">' + rejected + '</a>';
  59. }
  60. if (pending > 0) {
  61. row.cells[4].innerHTML = '<a href="' + row.cells[0].childNodes[1].href + '&sortType=Pending">' + pending + '</a>';
  62. }
  63.  
  64. if (USE_COLOURS) {
  65. if (pending <= LIMIT_GOOD) {
  66. row.cells[4].style.backgroundColor = (odd)?COLOUR_GOOD_ODD:COLOUR_GOOD_EVEN;
  67. }
  68. else if (pending <= LIMIT_OK) {
  69. row.cells[4].style.backgroundColor = (odd)?COLOUR_OK_ODD:COLOUR_OK_EVEN;
  70. }
  71. else {
  72. row.cells[4].style.backgroundColor = (odd)?COLOUR_BAD_ODD:COLOUR_BAD_EVEN;
  73. }
  74.  
  75. if (rejected == 0) {
  76. row.cells[3].style.backgroundColor = (odd)?COLOUR_GOOD_ODD:COLOUR_GOOD_EVEN;
  77. }
  78. else {
  79. row.cells[3].style.backgroundColor = (odd)?COLOUR_BAD_ODD:COLOUR_BAD_EVEN;
  80. }
  81. }
  82. }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址