cubensosgmail.com / Bankmanagergame - Kons. Mitglieder

// ==UserScript==
// @name          Bankmanagergame - Kons. Mitglieder
// @namespace     http://scripte.georglink.de/
// @description	  Errechnet für jedes Mitglied die SOLL/IST-Tresorbilanz.
// @author        Georg J.P. Link
// @include       http://bankmanagergame.de/index.php?section=konsortium_mitglieder*
// @include       http://www.bankmanagergame.de/index.php?section=konsortium_mitglieder*
// ==/UserScript==

var $;

// Add jQuery
(function(){
	if (typeof unsafeWindow.jQuery == 'undefined') {
		var GM_Head = document.getElementsByTagName('head')[0] || document.documentElement,
			GM_JQ = document.createElement('script');

		GM_JQ.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';
		GM_JQ.type = 'text/javascript';
		GM_JQ.async = true;

		GM_Head.insertBefore(GM_JQ, GM_Head.firstChild);
	}
	GM_wait();
})();

// Check if jQuery's loaded
function GM_wait() {
	if (typeof unsafeWindow.jQuery == 'undefined') {
		window.setTimeout(GM_wait, 100);
	} else {
		$1 = unsafeWindow.jQuery;
		tresorbilanz();
	 }
}

// formatiert die Ertragsaussicht mit Tausender Trennzeichen
function Trenner(number) {
	// Info: Die '' sind zwei Hochkommas
	var negativ = false;
	var farbe = "<span class='greeng'>";
	if(number<0){
		negativ = true;
		number *= -1;
		farbe = "<span class='red'>-";
	}
	number = '' + number;
	teile = number.split(".");
	ganze = teile[0];
	if (teile[1]){
		komma = teile[1];
	} else {
		komma = "00";
	}
	while(komma.length <2) {
		komma += "0";
	}
	komma = komma.substr(0,2);
	if (ganze.length > 3) {
		var mod = ganze.length % 3;
		var output = (mod > 0 ? (ganze.substring(0,mod)) : '');
		for (i=0 ; i < Math.floor(ganze.length / 3); i++) {
			if ((mod == 0) && (i == 0))
				output += ganze.substring(mod+ 3 * i, mod + 3 * i + 3);
			else
				// hier wird das Trennzeichen festgelegt mit '.'
				output+= '.' + ganze.substring(mod + 3 * i, mod + 3 * i + 3);
		}
		// return farbe+output+','+komma+"</span>";
		return farbe+output+"</span>";
	}
	// else return farbe+teile[0]+','+komma+"</span>";
	else return farbe+teile[0]+"</span>";
}



function tresorbilanz() {
	// Entferne Spalte mit "Rauswerfen"
	$1('#tablesorter td:contains("werfen"), #tablesorter th:contains("werfen")').remove();
	
	// Verkürze Überschrift von "Platzierung" auf "Platz"
	$1('#tablesorter th:contains("Platzierung")').text("Platz");
	
	// Adjustiere T-Bilanz Überschrift
	// $1('#tablesorter th:contains("Tresorbilanz")').html("T-Bilanz<br/>SOLL<br/>SOLL-IST");
	
	// Füge Überschriften für SOLL und SOLL-IST T-Bilanz ein
	$1('#tablesorter thead tr').append('<th class="header scripttresorbilanz" style="color:#de3">SOLL</th>');
	//$1('#tablesorter thead tr').append('<th class="header scripttresorbilanz">SOLL-IST</th>');
	$1('#tablesorter th').attr("style","vertical-align:top;background-color:#4D2F2A");
	//$1('#tablesorter thead tr').append('<th class="header scripttresorbilanz" style="display:none;vertical-align:top;background-color:#4D2F2A">T-Bilanz<br/>SOLL<hr/>SOLL-IST</th>');

	// Gehe jeden Spieler einzeln durch
	$1('#tablesorter tbody tr').each(function ( ) {
		var werte = new Array;
		var i=0;
		// Auslesen der Zellen
		$1(this).children().each(function () {
			werte.push($1(this).text());
			i++;
			if (i==5){
			//	$1(this).remove();
			}
		});
		
		// Aufbereitung der Werte
		var punkte = parseFloat(werte[1].replace(/\./g, ""));
		var IST_TBilanz = parseFloat(werte[6].replace(/\./g, ""));
		
		// Errechne SOLL und DIFF T-Bilanz
		var SOLL_TBilanz = (punkte*15);
		var SOLLIST_TBilanz = IST_TBilanz - SOLL_TBilanz;
		
		//trage Rating in tabelle ein.
		$1(this).append('<td class="scripttresorbilanz">'+ Trenner(SOLL_TBilanz) + ' &euro;</td>');
		//$1(this).append('<td class="scripttresorbilanz">'+ Trenner(SOLLIST_TBilanz) + ' &euro;</td>');
		$1(this).append('<td class="scripttresorbilanz" style="display:none;text-align:right">'+ Trenner(IST_TBilanz)+' &euro;'+'<br/>'+ Trenner(SOLL_TBilanz) + ' &euro;'+'<hr/>'+ Trenner(SOLLIST_TBilanz) + ' &euro;</td>');
		// $1(this).children(":last").each(function(){
			// $1(this).attr("style","text-align:right").html($1(this).html()+'<br/>'+ Trenner(SOLL_TBilanz) + ' &euro;'+'<hr/>'+ Trenner(SOLLIST_TBilanz) + ' &euro;');
		// })
	});	
	
	//Sortiere nach Platzierung
		window.setTimeout(function(){
			$1('#tablesorter th:contains("Platz")').click();
			addButtonListener();
		}, 100);
		
}


function addButtonListener(){
  var button = document.getElementById("scripttoggletbilanzdarstellung");
  button.addEventListener('click',clicktoggletbilanzdarstellung,false);
  // alert(GM_getValue('scripttresorbilanz',false));
  if(GM_getValue('scripttresorbilanz',false)){
	toggletbilanzdarstellung(0);
  }
}