some little script

Hack cursors

当前为 2017-03-22 提交的版本,查看 最新版本

  1. //// ==UserScript==
  2. // @name some little script
  3. // @namespace lilsc
  4. // @description Hack cursors
  5. // @homepage https://eu4.salesforce.com
  6. // @match https://eu4.salesforce.com
  7. // @include /^https://eu4.salesforce.com*
  8. // @version 0.0.1.20170322164355
  9. // ==/UserScript==
  10.  
  11. document.body.innerHTML = document.body.innerHTML.replace(/-/g, 'Kaputt');
  12. document.body.innerHTML = document.body.innerHTML.replace(/Cold Caller/g, '');
  13. Element.prototype.remove = function() {
  14. this.parentElement.removeChild(this);
  15. }
  16. NodeList.prototype.remove = HTMLCollection.prototype.remove = function() {
  17. for(var i = this.length - 1; i >= 0; i--) {
  18. if(this[i] && this[i].parentElement) {
  19. this[i].parentElement.removeChild(this[i]);
  20. }
  21. }
  22. }
  23.  
  24.  
  25. table = document.querySelector('.reportTable');
  26. everything = document.body.childNodes;
  27. document.body.style.background="black";
  28. document.body.style.setProperty('display', 'flex', 'important');
  29. document.body.style.setProperty('height', '100vh', 'important');
  30. document.body.style.setProperty('align-items', 'center', 'important');
  31. document.body.style.setProperty('justify-content', 'center', 'important');
  32. while(everything.length)
  33. document.body.removeChild(everything[0]);
  34. document.body.append(table);
  35.  
  36. function loadfonts() {
  37. var script = document.createElement("script");
  38. script.src = "https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js";
  39. script.type = "text/javascript";
  40. document.getElementsByTagName("head")[0].appendChild(script);
  41. }
  42. loadfonts();
  43. setTimeout(function () {
  44. WebFont.load({
  45. google: {
  46. families: ['Press Start 2P']
  47. }
  48. })
  49. }, 400)
  50.  
  51. newtable = document.querySelectorAll('tbody *');
  52. for (var i = 0; i < newtable.length; i++) {
  53. newtable[i].style.setProperty('background-color', 'white', 'important');
  54. newtable[i].style.setProperty('font-size', 'large', 'important');
  55. newtable[i].style.setProperty('font-family', '"Press Start 2P"', 'important');
  56. newtable[i].style.setProperty('color', 'black', 'important');
  57. newtable[i].style.setProperty('padding', '15px', 'important');
  58. }
  59. z = document.querySelectorAll('tr.headerRow:nth-child(1)');
  60. for (var i = 0; i < z.length; i++) {
  61. z[i].remove();
  62. }
  63. z = document.querySelectorAll('tr.grandTotalRow');
  64. for (var i = 0; i < z.length; i++) {
  65. z[i].remove();
  66. }
  67. z = document.querySelectorAll('td.drilldown');
  68. for (var i = 0; i < z.length; i++) {
  69. z[i].remove();
  70. }
  71. z = document.querySelectorAll('tr td:nth-child(2)');
  72. for (var i = 0; i < z.length; i++) {
  73. z[i].remove();
  74. }
  75. z = document.querySelectorAll('br');
  76. for (var i = 0; i < z.length; i++) {
  77. z[i].remove();
  78. }
  79. q = document.createElement('th');
  80. t = document.createTextNode('Dials')
  81. q.appendChild(t)
  82. q.style.setProperty('background-color', 'white', 'important');
  83. q.style.setProperty('font-size', 'large', 'important');
  84. q.style.setProperty('font-family', '"Press Start 2P"', 'important');
  85. q.style.setProperty('color', 'black', 'important');
  86. q.style.setProperty('padding', '15px', 'important');
  87. x = document.querySelector('tr:nth-child(1)')
  88. x.appendChild(q)
  89. values = ['Name','Kaputt', 'Appointment', 'Brutto', 'Netto', 'Grand Total']
  90. players = document.querySelectorAll('tr').length;
  91. playersdata = [];
  92. appointments = [];
  93. netto = [];
  94. for (var i = 1; i < players; i++) {
  95. playersdata.push([]);
  96. appointments.push([]);
  97. netto.push([]);
  98. for (var j = 0; j < 6; j++){
  99. if (j==5){
  100. playersdata[i-1].push(document.querySelectorAll('tr')[i].querySelectorAll('td')[j].querySelector('b').innerHTML);
  101. }
  102. else{
  103. playersdata[i-1].push(document.querySelectorAll('tr')[i].querySelectorAll('td')[j].innerHTML);
  104. }
  105. if (j==2){
  106. appointments[i-1].push(document.querySelectorAll('tr')[i].querySelectorAll('td')[j].innerHTML);
  107. }
  108. if (j==4){
  109. netto[i-1].push(document.querySelectorAll('tr')[i].querySelectorAll('td')[j].innerHTML);
  110. }
  111. }
  112. }
  113.  
  114. localStorage.appointments = appointments;
  115. if (typeof localStorage.appointmentsold == 'undefined') {
  116. localStorage.appointmentsold = localStorage.appointments;
  117. }
  118. if(localStorage.appointments != localStorage.appointmentsold){
  119. var audio = new Audio('http://themushroomkingdom.net/sounds/wav/smb/smb_stage_clear.wav');
  120. audio.play();
  121. localStorage.appointmentsold = localStorage.appointments;
  122. }
  123. localStorage.netto = netto;
  124. if (typeof localStorage.nettoold == 'undefined') {
  125. localStorage.nettoold = localStorage.netto;
  126. }
  127. if(localStorage.netto != localStorage.nettoold){
  128. var audio = new Audio('http://themushroomkingdom.net/sounds/wav/smb/smb_1-up.wav');
  129. audio.play();
  130. localStorage.nettoold = localStorage.netto;
  131. }