Pennergame Highscore 2017 by pennerhackisback

Erzeugtmehrere spalten it einigen informationen für alle penner

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name			Pennergame Highscore 2017  by pennerhackisback
// @namespace		pennerhackisback früher basti1012 oderpennerhack
// @description		Erzeugtmehrere spalten it einigen informationen für alle penner
// @author			basti1012
// @grant			GM_getValue
// @grant			GM_setValue
// @grant			GM_xmlhttpRequest
// @grant			GM_openInTab
// @include     	http://*.pennergame.de/highscore/user/*
// @include     	http://*.pennergame.de/highscore/joindate/*
// @icon			http://javan.de/tools/live/favicon.png
// @version			09.2017
// ==/UserScript==


	var head =document.getElementsByTagName('head')[0];
	head.innerHTML += '<link rel="icon" type="image/x-icon" href="http://media.pennergame.de/de/img/att.png" />';
var eins = document.getElementById('content');
var zwei = eins.getElementsByTagName('h2')[0];
zwei.innerHTML ='Highscoreanzeige 2017';
document.title = 'Highscoreanzeige 2017 copyright by pennerhackis back früher basti1012 oder pennerhackc';







function ungenaueMillionenWegMachen(differenz, punktefaktor) {

    if (punktefaktor != '')
        differenz = differenz.toString().substring(0, differenz.toString().length - punktefaktor.length) + punktefaktor;
    if (differenz.toString() == '' || differenz.toString() == punktefaktor)
        differenz = 0;

    return differenz;
}

function errechnePunktefaktor(punkte) {
    if (punkte.toString().search("Millionen") != -1)
        punktefaktor = '000';
    else if (punkte.toString().search("Milliarden") != -1)
        punktefaktor = '000000';
	else if (punkte.toString().search("Mrd") != -1)
        punktefaktor = '000000';
    else if (punkte.toString().search("Billionen") != -1)
        punktefaktor = '000000000';
	else if (punkte.toString().search("Billiarden") != -1)
        punktefaktor = '000000000000';
    else
        punktefaktor = '';

    return punktefaktor;
}

function MillionenWegMachen(punkte, punktefaktor) {
    punkte = punkte.replace(/[,€$.]/g, '');
    punkte = punkte.replace(/[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]/g, '');
    punkte = punkte.replace(/[ ]/g, '');
    punkte = punkte + punktefaktor;
    punkte = parseInt(punkte);

    return punkte;
}






    var ausgabebereich = document.getElementsByTagName('thead')[0].getElementsByTagName('tr')[0];
    ausgabebereich.innerHTML += '<table class="list" border="1" width="1490"><tbody><tr bgcolor="#272727">'
            +'<th align="center" width="80">Geld </th>'
            +'<th align="center" width="80">Differenz </th>'
            +'<th align="center" width="80">Reg </th>'
            +'<th align="center" width="80">Ranking </th>'
            +'<th align="center" width="80">Status </th>'
            +'<th align="center" width="80">sms </th>'
            +'<th align="center" width="80">Bandeninfos>>>>>> </th>'
            +'<th align="center" width="80">Bande </th>'
            +'<th align="center" width="80">Punkte </th>'
            +'<th align="center" width="80">Position </th>'
            +'<th align="center" width="80">Members </th></tr></tbody></table>';
         //   +'<th class="col7 flag" id="punkte"><div>Sms</div></th>';
                    


    function add(i) {

        var punkte = document.getElementsByTagName('body')[0].innerHTML.split('class="col5')[i + 1].split('">')[1].split('</td>')[0];





        punktefaktor = errechnePunktefaktor(punkte);
        punkte = MillionenWegMachen(punkte, punktefaktor);



        var name = document.getElementsByTagName('body')[0].innerHTML.split('class="username')[i].split('">')[1].split('</a>')[0].split('<')[0];

	GM_xmlhttpRequest({
		method: 'GET',
		url: 'http://www.pennergame.de/dev/api/user.getname.xml?name='+name+'',
		onload: function(responseDetails) {
			var parser = new DOMParser();
            try{
			var dom = parser.parseFromString(responseDetails.responseText, "application/xml");
			var nam = dom.getElementsByTagName('name')[0].textContent;
			var id = dom.getElementsByTagName('id')[0].textContent;
			//var platz = dom.getElementsByTagName('position')[0].textContent;
			var punktenow = dom.getElementsByTagName('points')[0].textContent;
			var reg = dom.getElementsByTagName('reg_since')[0].textContent;
			var rankingpoints = dom.getElementsByTagName('rankingpoints')[0].textContent;
            }catch(e){
            var nam = '---';
			var id =  '---';
			//var platz =  '---';
			var punktenow =  '0';
			var reg =  '---';
			var rankingpoints =  '---';
                
                
                
                
            }
            
				try{
					var bande = dom.getElementsByTagName('name')[1].textContent;
					var bandeid = dom.getElementsByTagName('id')[1].textContent;
		var status = dom.getElementsByTagName('status')[0].textContent;
					var joined = dom.getElementsByTagName('joined')[0].textContent;
					var bandeergebniss = '<a href="/profil/bande:'+bandeid+'/" style="text-decoration: none;">'+bande+'</a>';

                
                

                
                
                    }catch(e){
                        
                        
				var bandeergebniss = '- - -';
                    var bande='--';
                    var bandeid ='---';
                    var joined = '---';
                    var status ='---';
    
        if (status==3) {
       	var statu = '<img src="http://media.pennergame.de/img/bande/admin.gif"><font style=\"color:blue; font-size:100%;\"><b> Admin</b></font>';
        }
        else if (status==2) {
        var statu = '<img src="http://media.pennergame.de/img/bande/coadmin.gif"><font style=\"color:orange; font-size:100%;\"><b> Co-Admin</font>';
        }
        else if (status==1) {
        var statu = '<img src="http://media.pennergame.de/img/bande/member.gif"><font style=\"color:grey; font-size:100%;\"><b> Mitglied</font>';
        }
        else if (status==0) {
        var statu = 'No Bande';
}
                    }
	try{
		var cash = dom.getElementsByTagName('cash')[0].textContent/100;
	}catch(e){
		var cash = '- - -';
	}



var sms ='<a href="/messages/write/?to='+id+'"><img src="http://media.pennergame.de/img/overview/new_msg.gif"</a>';

if (cash >= 500000){
var farbe1 = "black";}
if (cash <= 400000){
var farbe1 = "gray";}
if (cash <= 300000){
farbe1 = "blue";}
if (cash <= 200000){
var farbe1 = "cyan";}
if (cash <= 100000){
farbe1 = "red";}
if (cash <= 50000){
var farbe1 = "green";}
if (cash <= 40000){
farbe1 = "magenta";}
if (cash <= 30000){
farbe1 = "orange";}
if (cash <= 20000){
var farbe1 = "yellow";}
if (cash <= 10000){
var farbe1 = "white";}



                    var differenz = punktenow - punkte;

                    differenz = ungenaueMillionenWegMachen(differenz, punktefaktor);


                    if (differenz > 0) {
                        var color = '00ff00';
                    } else if (differenz == 0) {
                        var color = 'ffc000';
                    } else {
                        var color = 'ff0000';
                    }
bande1(bande,bandeid,name,id,punktenow,reg,rankingpoints,status,cash,joined,farbe1,color,differenz,sms,i)

				//alert(document.getElementsByTagName('table')[i].getElementsByTagName('tr')[i].getElementsByTagName('td')[0].innerHTML);

            }
        });
    }







function bande1(bande,bandeid,name,id,punktenow,reg,rankingpoints,status,cash,joined,farbe1,color,differenz,sms,i) {
    
    	GM_xmlhttpRequest({
    	method: 'GET',
   		url: 'http://www.pennergame.de/dev/api/gang.'+bandeid+'.xml',
		onload: function(responseDetails) {
        	var parser = new DOMParser();
            try{
        	var dom = parser.parseFromString(responseDetails.responseText, "application/xml");
		    var founder = dom.getElementsByTagName('founder')[0].textContent;
		    var pun = dom.getElementsByTagName('points')[0].textContent;
             var pos = dom.getElementsByTagName('position')[0].textContent;
             var mem = dom.getElementsByTagName('member_count')[0].textContent;
                         var namee= dom.getElementsByTagName('name')[0].textContent;
                var blink ='<a href="/profil/bande:'+bandeid+'/">'+namee+'</a>';
            }catch(e){
                var founder = '---';
                var pun = '---';
                var pos  = '---';
                var mem = '---';
                var blink ='---';
                
                
            }
                        document.getElementsByTagName('table')[0].getElementsByTagName('tr')[i].innerHTML += ''
                            +'<table class="list" border="1" width="1490"><tbody><tr bgcolor="#272727">'
                        +'<td class="col7"><span style="color:' + farbe1 + '">' + cash + '</span></td>'
                                        +'<td class="col7"><span style="color:#' + color+ '">' + differenz + ' </td>'
                                            +'<td align="center" width="80"> ' + reg + '     </td>'
                                            +'<td align="center" width="80"> ' + rankingpoints + ' </td>'
                                            +'<td align="center" width="80"> ' + status + ' </td>'
                                            +'<td align="center" width="80"> ' + sms + ' </td>'
                                            +'<td align="center" width="80">Bandeninfo>>>>>>>>>>>>>></td>'
                                            +'<td align="center" width="80">'+blink+'</td>'
                                            +'<td align="center" width="80"> ' + pun + ' </td>'
                                            +'<td align="center" width="80"> ' + pos + ' </td>'
                                            +'<td align="center" width="80"> ' + mem + ' </td></tr></tbod></table>';
                        
                           





                var next = i + 1;
                if (next <= 25)
                    add(next);
        }});
}





    add(1);





// Copyright (c) by Javan_xD
// Dieses Werk ist durch eine Creative Commons by-nc-sa Lizenz geschuetzt.
// Bearbeiten oder Vervielfaeltigen ist nur nach Absrache mit dem Autor gestattet.
// Bei Nichtbeachtung werden rechtliche Schritte eingeleitet.