Pennergame Highscore 2017 by pennerhackisback

Erzeugtmehrere spalten it einigen informationen für alle penner

  1. // ==UserScript==
  2. // @name Pennergame Highscore 2017 by pennerhackisback
  3. // @namespace pennerhackisback früher basti1012 oderpennerhack
  4. // @description Erzeugtmehrere spalten it einigen informationen für alle penner
  5. // @author basti1012
  6. // @grant GM_getValue
  7. // @grant GM_setValue
  8. // @grant GM_xmlhttpRequest
  9. // @grant GM_openInTab
  10. // @include http://*.pennergame.de/highscore/user/*
  11. // @include http://*.pennergame.de/highscore/joindate/*
  12. // @icon http://javan.de/tools/live/favicon.png
  13. // @version 09.2017
  14. // ==/UserScript==
  15.  
  16.  
  17. var head =document.getElementsByTagName('head')[0];
  18. head.innerHTML += '<link rel="icon" type="image/x-icon" href="http://media.pennergame.de/de/img/att.png" />';
  19. var eins = document.getElementById('content');
  20. var zwei = eins.getElementsByTagName('h2')[0];
  21. zwei.innerHTML ='Highscoreanzeige 2017';
  22. document.title = 'Highscoreanzeige 2017 copyright by pennerhackis back früher basti1012 oder pennerhackc';
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30. function ungenaueMillionenWegMachen(differenz, punktefaktor) {
  31.  
  32. if (punktefaktor != '')
  33. differenz = differenz.toString().substring(0, differenz.toString().length - punktefaktor.length) + punktefaktor;
  34. if (differenz.toString() == '' || differenz.toString() == punktefaktor)
  35. differenz = 0;
  36.  
  37. return differenz;
  38. }
  39.  
  40. function errechnePunktefaktor(punkte) {
  41. if (punkte.toString().search("Millionen") != -1)
  42. punktefaktor = '000';
  43. else if (punkte.toString().search("Milliarden") != -1)
  44. punktefaktor = '000000';
  45. else if (punkte.toString().search("Mrd") != -1)
  46. punktefaktor = '000000';
  47. else if (punkte.toString().search("Billionen") != -1)
  48. punktefaktor = '000000000';
  49. else if (punkte.toString().search("Billiarden") != -1)
  50. punktefaktor = '000000000000';
  51. else
  52. punktefaktor = '';
  53.  
  54. return punktefaktor;
  55. }
  56.  
  57. function MillionenWegMachen(punkte, punktefaktor) {
  58. punkte = punkte.replace(/[,€$.]/g, '');
  59. punkte = punkte.replace(/[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]/g, '');
  60. punkte = punkte.replace(/[ ]/g, '');
  61. punkte = punkte + punktefaktor;
  62. punkte = parseInt(punkte);
  63.  
  64. return punkte;
  65. }
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72. var ausgabebereich = document.getElementsByTagName('thead')[0].getElementsByTagName('tr')[0];
  73. ausgabebereich.innerHTML += '<table class="list" border="1" width="1490"><tbody><tr bgcolor="#272727">'
  74. +'<th align="center" width="80">Geld </th>'
  75. +'<th align="center" width="80">Differenz </th>'
  76. +'<th align="center" width="80">Reg </th>'
  77. +'<th align="center" width="80">Ranking </th>'
  78. +'<th align="center" width="80">Status </th>'
  79. +'<th align="center" width="80">sms </th>'
  80. +'<th align="center" width="80">Bandeninfos>>>>>> </th>'
  81. +'<th align="center" width="80">Bande </th>'
  82. +'<th align="center" width="80">Punkte </th>'
  83. +'<th align="center" width="80">Position </th>'
  84. +'<th align="center" width="80">Members </th></tr></tbody></table>';
  85. // +'<th class="col7 flag" id="punkte"><div>Sms</div></th>';
  86.  
  87.  
  88. function add(i) {
  89.  
  90. var punkte = document.getElementsByTagName('body')[0].innerHTML.split('class="col5')[i + 1].split('">')[1].split('</td>')[0];
  91.  
  92.  
  93.  
  94.  
  95.  
  96. punktefaktor = errechnePunktefaktor(punkte);
  97. punkte = MillionenWegMachen(punkte, punktefaktor);
  98.  
  99.  
  100.  
  101. var name = document.getElementsByTagName('body')[0].innerHTML.split('class="username')[i].split('">')[1].split('</a>')[0].split('<')[0];
  102.  
  103. GM_xmlhttpRequest({
  104. method: 'GET',
  105. url: 'http://www.pennergame.de/dev/api/user.getname.xml?name='+name+'',
  106. onload: function(responseDetails) {
  107. var parser = new DOMParser();
  108. try{
  109. var dom = parser.parseFromString(responseDetails.responseText, "application/xml");
  110. var nam = dom.getElementsByTagName('name')[0].textContent;
  111. var id = dom.getElementsByTagName('id')[0].textContent;
  112. //var platz = dom.getElementsByTagName('position')[0].textContent;
  113. var punktenow = dom.getElementsByTagName('points')[0].textContent;
  114. var reg = dom.getElementsByTagName('reg_since')[0].textContent;
  115. var rankingpoints = dom.getElementsByTagName('rankingpoints')[0].textContent;
  116. }catch(e){
  117. var nam = '---';
  118. var id = '---';
  119. //var platz = '---';
  120. var punktenow = '0';
  121. var reg = '---';
  122. var rankingpoints = '---';
  123. }
  124. try{
  125. var bande = dom.getElementsByTagName('name')[1].textContent;
  126. var bandeid = dom.getElementsByTagName('id')[1].textContent;
  127. var status = dom.getElementsByTagName('status')[0].textContent;
  128. var joined = dom.getElementsByTagName('joined')[0].textContent;
  129. var bandeergebniss = '<a href="/profil/bande:'+bandeid+'/" style="text-decoration: none;">'+bande+'</a>';
  130.  
  131.  
  132. }catch(e){
  133. var bandeergebniss = '- - -';
  134. var bande='--';
  135. var bandeid ='---';
  136. var joined = '---';
  137. var status ='---';
  138. if (status==3) {
  139. var statu = '<img src="http://media.pennergame.de/img/bande/admin.gif"><font style=\"color:blue; font-size:100%;\"><b> Admin</b></font>';
  140. }
  141. else if (status==2) {
  142. var statu = '<img src="http://media.pennergame.de/img/bande/coadmin.gif"><font style=\"color:orange; font-size:100%;\"><b> Co-Admin</font>';
  143. }
  144. else if (status==1) {
  145. var statu = '<img src="http://media.pennergame.de/img/bande/member.gif"><font style=\"color:grey; font-size:100%;\"><b> Mitglied</font>';
  146. }
  147. else if (status==0) {
  148. var statu = 'No Bande';
  149. }
  150. }
  151. try{
  152. var cash = dom.getElementsByTagName('cash')[0].textContent/100;
  153. }catch(e){
  154. var cash = '- - -';
  155. }
  156.  
  157.  
  158.  
  159. var sms ='<a href="/messages/write/?to='+id+'"><img src="http://media.pennergame.de/img/overview/new_msg.gif"</a>';
  160.  
  161. if (cash >= 500000){
  162. var farbe1 = "black";}
  163. if (cash <= 400000){
  164. var farbe1 = "gray";}
  165. if (cash <= 300000){
  166. farbe1 = "blue";}
  167. if (cash <= 200000){
  168. var farbe1 = "cyan";}
  169. if (cash <= 100000){
  170. farbe1 = "red";}
  171. if (cash <= 50000){
  172. var farbe1 = "green";}
  173. if (cash <= 40000){
  174. farbe1 = "magenta";}
  175. if (cash <= 30000){
  176. farbe1 = "orange";}
  177. if (cash <= 20000){
  178. var farbe1 = "yellow";}
  179. if (cash <= 10000){
  180. var farbe1 = "white";}
  181.  
  182.  
  183.  
  184. var differenz = punktenow - punkte;
  185.  
  186. differenz = ungenaueMillionenWegMachen(differenz, punktefaktor);
  187.  
  188.  
  189. if (differenz > 0) {
  190. var color = '00ff00';
  191. } else if (differenz == 0) {
  192. var color = 'ffc000';
  193. } else {
  194. var color = 'ff0000';
  195. }
  196. bande1(bande,bandeid,name,id,punktenow,reg,rankingpoints,status,cash,joined,farbe1,color,differenz,sms,i)
  197.  
  198. //alert(document.getElementsByTagName('table')[i].getElementsByTagName('tr')[i].getElementsByTagName('td')[0].innerHTML);
  199.  
  200. }
  201. });
  202. }
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210. function bande1(bande,bandeid,name,id,punktenow,reg,rankingpoints,status,cash,joined,farbe1,color,differenz,sms,i) {
  211. GM_xmlhttpRequest({
  212. method: 'GET',
  213. url: 'http://www.pennergame.de/dev/api/gang.'+bandeid+'.xml',
  214. onload: function(responseDetails) {
  215. var parser = new DOMParser();
  216. try{
  217. var dom = parser.parseFromString(responseDetails.responseText, "application/xml");
  218. var founder = dom.getElementsByTagName('founder')[0].textContent;
  219. var pun = dom.getElementsByTagName('points')[0].textContent;
  220. var pos = dom.getElementsByTagName('position')[0].textContent;
  221. var mem = dom.getElementsByTagName('member_count')[0].textContent;
  222. var namee= dom.getElementsByTagName('name')[0].textContent;
  223. var blink ='<a href="/profil/bande:'+bandeid+'/">'+namee+'</a>';
  224. }catch(e){
  225. var founder = '---';
  226. var pun = '---';
  227. var pos = '---';
  228. var mem = '---';
  229. var blink ='---';
  230. }
  231. document.getElementsByTagName('table')[0].getElementsByTagName('tr')[i].innerHTML += ''
  232. +'<table class="list" border="1" width="1490"><tbody><tr bgcolor="#272727">'
  233. +'<td class="col7"><span style="color:' + farbe1 + '">' + cash + '</span></td>'
  234. +'<td class="col7"><span style="color:#' + color+ '">' + differenz + ' </td>'
  235. +'<td align="center" width="80"> ' + reg + ' </td>'
  236. +'<td align="center" width="80"> ' + rankingpoints + ' </td>'
  237. +'<td align="center" width="80"> ' + status + ' </td>'
  238. +'<td align="center" width="80"> ' + sms + ' </td>'
  239. +'<td align="center" width="80">Bandeninfo>>>>>>>>>>>>>></td>'
  240. +'<td align="center" width="80">'+blink+'</td>'
  241. +'<td align="center" width="80"> ' + pun + ' </td>'
  242. +'<td align="center" width="80"> ' + pos + ' </td>'
  243. +'<td align="center" width="80"> ' + mem + ' </td></tr></tbod></table>';
  244.  
  245.  
  246.  
  247.  
  248.  
  249. var next = i + 1;
  250. if (next <= 25)
  251. add(next);
  252. }});
  253. }
  254.  
  255.  
  256.  
  257.  
  258.  
  259. add(1);
  260.  
  261.  
  262.  
  263.  
  264.  
  265. // Copyright (c) by Javan_xD
  266. // Dieses Werk ist durch eine Creative Commons by-nc-sa Lizenz geschuetzt.
  267. // Bearbeiten oder Vervielfaeltigen ist nur nach Absrache mit dem Autor gestattet.
  268. // Bei Nichtbeachtung werden rechtliche Schritte eingeleitet.