Snagajob Highlighter

Mturk Highlights key words and adds hotkey, click ? for key list

  1. // ==UserScript==
  2. // @name Snagajob Highlighter
  3. // @version 0.4
  4. // @author Cristo
  5. // @description Mturk Highlights key words and adds hotkey, click ? for key list
  6. // @include *
  7. // @copyright 2012+, You
  8. // @namespace https://greasyfork.org/users/1973
  9. // ==/UserScript==
  10.  
  11. var page = document.getElementById("mturk_form");
  12. var pageText = page.getElementsByTagName("p")[3];
  13. var raw = page.getElementsByTagName("p")[5];
  14. var inText = raw.innerHTML;
  15. var done = inText.split("\"")[1];
  16. var done2 = done.replace(/[^\w\s]/gi, ' ');
  17. var keyArr = done2.split(" ");
  18. var inerText = pageText.innerHTML;
  19. var yRadio = page.getElementsByTagName("input")[1];
  20. var nRadio = page.getElementsByTagName("input")[2];
  21. var sub = page.getElementsByTagName("input")[3];
  22. var cI = 0;
  23.  
  24.  
  25. page.tabIndex = "0";
  26. page.focus();
  27.  
  28.  
  29. while (cI < keyArr.length) {
  30. var base = new RegExp(keyArr[cI],"g" + "i");
  31. var chk = (inerText.match(base) || []).length;
  32. if (chk >= 0 && chk < 10) {
  33. var reText = '<mark style="background-color:red;">' + keyArr[cI] + '</mark>';
  34. pageText.innerHTML = pageText.innerHTML.replace(base, reText);
  35. cI++;
  36. }else {
  37. cI++;
  38. }
  39. }
  40.  
  41. document.addEventListener( "keydown", kas, false);
  42. function kas(i) {
  43. if (i.keyCode == 65) { //A Key - Fills Yes
  44. yRadio.checked = true;
  45. }
  46. if (i.keyCode == 68) { //D Key - Fills No
  47. nRadio.checked = true;
  48. }
  49. if (i.keyCode == 87) { //W Key - Submit
  50. sub.click();
  51. }
  52. if (i.keyCode== 191) { //? Key - Shows Keys
  53. alert("A Key - Yes\nD Key - No\nW Key - Submit");
  54. }
  55. }