YouTube Player for Forocoches

Never thought I would made something so unsettling, enjoy it!

当前为 2016-07-07 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name YouTube Player for Forocoches
  3. // @name:es Reproductor de YouTube para Forocoches
  4. // @description Never thought I would made something so unsettling, enjoy it!
  5. // @description:es Nunca pensé que terminaría haciendo algo tan demigrante, ¡de nada!
  6. // @namespace swyter
  7. // @match *://www.forocoches.com/*
  8. // @match *://m.forocoches.com/*
  9. // @match *://forocoches.com/*
  10. // @version 1.1.1.4
  11. // @grant none
  12. // @run-at document-start
  13. // ==/UserScript==
  14.  
  15. /* switch the iframe source to a less scummy one */
  16.  
  17. /* wait until the page is ready for the code snippet to run */
  18. document.addEventListener('DOMContentLoaded', function()
  19. {
  20. console.log("[removing the sponsored youtube player crap]]");
  21.  
  22. for (var cur in (vids=document.querySelectorAll("iframe[src*=smartycenter]")))
  23. {
  24. if(typeof vids[cur] !== 'object')
  25. continue;
  26.  
  27. vids[cur].src = 'https://www.youtube.com/embed/' + vids[cur].src.split("/")[6];
  28. }
  29.  
  30. console.log("[getting rid of random crap]]");
  31. /* remove random crap */
  32.  
  33. filters =
  34. [
  35. "#infocookie",
  36. "div[id^='div-']",
  37. "ul[style*='#ca3415'] + ul",
  38. "a + ul + br",
  39. ".cajasprin"
  40. ];
  41.  
  42. for (var cur in (junk=document.querySelectorAll(filters.join(', '))))
  43. {
  44. if(typeof junk[cur] !== 'object')
  45. continue;
  46.  
  47. console.log("Removed junk element: " + junk[cur]);
  48. junk[cur].parentElement.removeChild(junk[cur]);
  49. }
  50. console.log("[getting rid of useless posts]]");
  51.  
  52. for(a of (document.querySelectorAll("div[id^=post_message]")))
  53. {
  54. if (!(a.childNodes[0].nodeValue.trim().match("Este mensaje está oculto porque .+ está en tu lista de ignorados(.)?$") != null))
  55. continue;
  56.  
  57. console.log(a, a.childNodes[0].nodeValue);
  58.  
  59. a = a.parentElement.parentElement.parentElement.parentElement;
  60. a.parentElement.removeChild(a);
  61.  
  62. }
  63. console.log("[deemphasizing fachas and maleantes]]");
  64. blocked_users =
  65. [
  66. 'Pedrote', 'RAMON38', 'Orof', 'matalpinensis', 'Kurtcob', 'DalePapi', 'pinilleitor', 'Zenobio73',
  67. 'kevinxuan', 'Euritos', '-Averia-', 'Mcbubles', 'Medlinor', 'Amon Amarth','ShurKhalifa', 'Satou',
  68. 'sirp', 'spilock', 'amstel', 'josalb', 'pablitochu89', 'sagi1978', 'Mr. Deadpool', 'DeBoer',
  69. 'Jabyesp', 'mcarlosd', 'eosal', 'Mugremita', 'chafer', 'KRASNY BOR', 'Recaredo','sandrocor'
  70. ]
  71. for (e of document.querySelectorAll(".bigusername, .smallfont > span[onclick]"))
  72. {
  73. if (!(blocked_users.indexOf(e.textContent) != -1))
  74. continue;
  75.  
  76. console.log('Obscured posts by blocked user: ', e.textContent);
  77.  
  78. (e.nodeName != 'SPAN' ?
  79. e.parentNode.parentNode.parentNode.parentNode.parentElement :
  80. e.parentNode.parentNode.parentNode
  81. ).style.opacity = 0.3;
  82. }
  83. console.log("[all done]]");
  84. });