Proxer-Subs/Scans -- UserScript

Dieses Script klappt alle Einträge in der "Meine Projecte" Liste ein

目前為 2015-06-29 提交的版本,檢視 最新版本

  1. // ==UserScript==
  2. // @name Proxer-Subs/Scans -- UserScript
  3. // @namespace
  4. // @version 1.0
  5. // @description Dieses Script klappt alle Einträge in der "Meine Projecte" Liste ein
  6. // @author Dominik Bissinger alias Nihongasuki
  7. // @include http://proxer.me/*
  8. // @include https://proxer.me/*
  9. // @include http://www.proxer.me/*
  10. // @include https://www.proxer.me/*
  11. // @run-at document-start
  12. // ==/UserScript==
  13.  
  14. document.addEventListener('DOMContentLoaded', function(event) {
  15. $(document).ajaxSuccess (function () {
  16. main();
  17. });
  18. main();
  19. });
  20.  
  21. var table = [];
  22. var main = function () {
  23. if (window.location.href.indexOf('subs?s=my') === -1 || window.location.href.indexOf('forum') > -1) {return;};
  24. if (document.getElementsByClassName('hideButton').length !== 0) {return;};
  25. var style = document.createElement('style');
  26. style.innerHTML = "\
  27. .hideButton {\
  28. height: 20px; \
  29. border-style: solid;\
  30. border-width: 1px; \
  31. padding: 5px; \
  32. border-radius: 10px;\
  33. }\
  34. ";
  35. document.head.appendChild(style);
  36. var inner = document.getElementsByClassName('inner')[0];
  37. var div = inner.getElementsByTagName('div');
  38. var a = [];
  39. var aString = [];
  40. table = [];
  41. for (var i = 0; i < div.length; i++) {
  42. table[i] = div[i].getElementsByTagName('table')[0];
  43. table[i].style.display = "none";
  44. var hr = div[i].getElementsByTagName('hr')[0];
  45. var br = document.createElement('br');
  46. var newSpan = document.createElement('span');
  47. var img = document.createElement('img');
  48. img.setAttribute ("class","hideButton");
  49. img.setAttribute ("id","showState"+i);
  50. img.setAttribute ("style","display: inline; position: relative; top: 10px; left: 5px;");
  51. if (div[i].getElementsByClassName('nextState').length !== 0 || div[i].getElementsByClassName('prevState').length !== 0) {
  52. img.src = "/images/misc/offlineicon.png";
  53. }else{
  54. img.src = "/images/misc/onlineicon.png";
  55. };
  56. newSpan.setAttribute ("class","hideButton");
  57. newSpan.setAttribute ("id","hideButton"+i);
  58. newSpan.setAttribute ("style","cursor: pointer; display: inline;");
  59. newSpan.innerHTML = "Tabelle anzeigen";
  60. div[i].insertBefore(newSpan,hr);
  61. div[i].insertBefore(img,hr);
  62. div[i].appendChild(br);
  63. document.getElementById('hideButton'+i).addEventListener("click",function () {
  64. showHide(this.id);
  65. })
  66. };
  67. //setStyle of Buttons
  68. var color = "";
  69. var setStyle = function () {
  70. for (var i = 0; i < 4; i++) {
  71. if (color === "gray") {
  72. var buttons = document.getElementsByClassName('hideButton');
  73. for (var j = 0; j < buttons.length; j++) {
  74. buttons[j].style.backgroundColor = "#5E5E5E";
  75. buttons[j].style.borderColor = "#FFF";
  76. };
  77. }else if (color === "black") {
  78. var buttons = document.getElementsByClassName('hideButton');
  79. for (var j = 0; j < buttons.length; j++) {
  80. buttons[j].style.backgroundColor = "#000";
  81. buttons[j].style.borderColor = "#FFF";
  82. };
  83. }else if (color === "old_blue") {
  84. var buttons = document.getElementsByClassName('hideButton');
  85. for (var j = 0; j < buttons.length; j++) {
  86. buttons[j].style.backgroundColor = "#F3FBFF";
  87. buttons[j].style.borderColor = "#000";
  88. };
  89. }else{
  90. var buttons = document.getElementsByClassName('hideButton');
  91. for (var j = 0; j < buttons.length; j++) {
  92. buttons[j].style.backgroundColor = "#F3FBFF";
  93. buttons[j].style.borderColor = "#000";
  94. };
  95. };
  96. };
  97. };
  98. //Read Cookie
  99. var name = "style=";
  100. var cookieCheck = function () {
  101. var ca = document.cookie.split(';');
  102. for (var i = 0; i < ca.length; i++) {
  103. var c = ca[i];
  104. while (c.charAt(0) === " ") {
  105. c = c.substring(1);
  106. };
  107. if (c.indexOf(name) == 0) {
  108. color = c.substring(name.length,c.length);
  109. setStyle();
  110. };
  111. };
  112. if (color === "") {
  113. cookieCheck();
  114. };
  115. };
  116. cookieCheck();
  117. };
  118.  
  119. var showHide = function (id) {
  120. var i = id.substring(10);
  121. if (table[i].style.display === "none") {
  122. table[i].style.display = "inline";
  123. document.getElementById(id).innerHTML = "Tabelle ausblenden";
  124. document.getElementById("showState"+i).style.display = "none";
  125. }else{
  126. table[i].style.display = "none";
  127. document.getElementById(id).innerHTML = "Tabelle anzeigen";
  128. document.getElementById("showState"+i).style.display = "inline";
  129. };
  130. };