Mydealz Script

Versteckt abgelaufene Dealz, verbreitert die Seitenansicht, entfernt den Newsletterhinweis und entfernt einige Referrerlinks

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

  1. // ==UserScript==
  2. // @name Mydealz Script
  3. // @description Versteckt abgelaufene Dealz, verbreitert die Seitenansicht, entfernt den Newsletterhinweis und entfernt einige Referrerlinks
  4. // @namespace cuzi
  5. // @oujs:author cuzi
  6. // @version 2
  7. // @license GNUGPL
  8. // @include /^https?:\/\/www\.mydealz\.de\/.*/
  9. // @exclude /^https?:\/\/www\.mydealz\.de\/profile\/.*/
  10. // @exclude /^https?:\/\/www\.mydealz\.de\/search.*/
  11. // @grant none
  12. // ==/UserScript==
  13.  
  14. function decodeHtml(html) {
  15. var txt = document.createElement("textarea");
  16. txt.innerHTML = html;
  17. txt.innerHTML = txt.value;
  18. txt.innerHTML = txt.value;
  19. txt.innerHTML = txt.value;
  20. return txt.value;
  21. }
  22.  
  23. function reviveDeal() {
  24. this.removeEventListener('click',reviveDeal);
  25. this.style.maxHeight = "";
  26. this.style.opacity = 1.0;
  27. }
  28.  
  29. function restoreLinks() {
  30. var a = document.querySelectorAll("a[target]");
  31. var pattern0 = /^http:\/\/www\.mydealz\.de\/visit\?.*&d=(.+)/;
  32. var pattern1 = /&redir=(http.+)"/;
  33. var pattern2 = /"label":"(http.+)"/;
  34.  
  35. for(let i = 0; i < a.length; i++) {
  36. if(pattern0.test(a[i].href)) {
  37. a[i].href = decodeHtml(decodeURIComponent(pattern0.exec(a[i].href)[1]));
  38. } else if("track" in a[i].dataset && pattern1.test(a[i].dataset.track)) {
  39. a[i].href = decodeHtml(decodeURIComponent(pattern1.exec(a[i].dataset.track)[1]));
  40. } else if("track" in a[i].dataset && pattern2.test(a[i].dataset.track)) {
  41. a[i].href = decodeHtml(decodeURIComponent(pattern2.exec(a[i].dataset.track)[1]));
  42. }
  43. }
  44. }
  45.  
  46. (function main() {
  47.  
  48. // Widen page content
  49. document.querySelector('.page-canvas>.page-content').style.maxWidth = '120em';
  50.  
  51. // Restore links
  52. restoreLinks();
  53.  
  54. // Remove newsletter info
  55. try {
  56. var n = document.querySelector('li.inline-newsletter');
  57. n.parentNode.removeChild(n);
  58. } catch(e) {}
  59.  
  60. // Put expired dealz to sleep
  61. var lis = document.querySelectorAll('.thread--expired .thread-title');
  62. for(let i = 0; i < lis.length; i++) {
  63. var li = lis[i].parentNode.parentNode.parentNode.parentNode;
  64. var s = li.style;
  65. s.maxHeight = '10em';
  66. s.overflow = 'auto';
  67. s.opacity = 0.5;
  68. li.addEventListener('click',reviveDeal);
  69. }
  70.  
  71. })();

QingJ © 2025

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