Thumb

Gemeinsame Freunde für studiVZ, meinVZ, schülerVZ

By svztalker Last update Oct 30, 2009 — Installed 2,381 times. Daily Installs: 8, 8, 4, 6, 4, 20, 21, 12, 19, 8, 9, 31, 14, 15, 11, 14, 15, 8, 6, 7, 13, 5, 5, 14, 13, 9, 8, 9, 14, 3, 18, 5

There are 5 previous versions of this script.

// ==UserScript==
// @name			Gemeinsame Freunde für studiVZ, meinVZ, schülerVZ
// @namespace		http://1x1hoster.de/svztalker
// @description		Berechnet die gemeinsamen Freunde in Prozent.
// @version			Alpha 1.2
// @include			http://www.schuelervz.net/Profile/*
// @include			http://www.meinvz.net/Profile/*
// @include			http://www.studivz.net/Profile/*
// @include			http://*1x1hoster.de/svztalker/scripts/*
// ==/UserScript==

/*
 *	Alle Scripts und Updates: http://1x1hoster.de/svztalker/scripts	
 *	Twitter: http://twitter.com/svztalker
 *	Blog: http://1x1hoster.de/svztalker
 *	Userscripts (Support): http://userscripts.org/users/svztalker
*/

var version = "12a";
if(document.getElementById("gemeinsame_freunde_version"))
{
	if(document.getElementById("gemeinsame_freunde_version").value!=version)
	{
		document.getElementById("gemeinsame_freunde_install").className = "script_status_update";
		document.getElementById("gemeinsame_freunde_install").innerHTML = "Update vorhanden";
	}
	else
	{
		document.getElementById("gemeinsame_freunde_install").className = "script_status_install";
		document.getElementById("gemeinsame_freunde_install").innerHTML = "installiert, kein Update vorhanden";
	}
}

var gem_freunde;
var ges_freunde;
var ges_freunde_owner;

if(document.getElementById('profileLeft').innerHTML.search(/>1 gemeinsamen Freund</)!=-1)
{
	gem_freunde = 1;
}
else if(document.getElementById('profileLeft').innerHTML.search(/>([0-9]+) gemeinsame Freunde</)!=-1)
{
 	gem_freunde =  document.getElementById('profileLeft').innerHTML.match(/>([0-9]+) gemeinsame Freunde</)[1];
}
else
{
	gem_freunde = 0;
}

if(gem_freunde>0)
{
 	var user = document.getElementById('profileLeft').innerHTML.match(/\/Friends\/All\/([0-9A-Za-z\-_]{43})/)[1];
 	var owner = document.getElementById('Grid-Page-Left').innerHTML.match(/\/Profile\/([0-9A-Za-z\-_]{43})/)[1];
	var vz = window.location.href.match(/http:\/\/www\.([a-z]+)vz\.net/)[1];
	
 	var spalte = document.evaluate("//div[@class='obj-subbar']",document,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);
 	for (var i = 0; i < spalte.snapshotLength; i++) {
    	if(spalte.snapshotItem(i).innerHTML.search(/Du hast/)!=-1)
    	{
			var aus = spalte.snapshotItem(i);
		}
	}
	
 	
	function prozent_freunde()
	{
		GM_xmlhttpRequest({
			method: 'GET',
    		url: 'http://www.'+vz+'vz.net/Friends/All/'+user,
    		headers: 
			{
	 			'User-Agent': 'Mozilla/4.0 (compatible) Greasemonkey',
				'Accept': 'application/atom+xml,application/xml,text/xml'
    		},
    		onload: function(responseDetails) 
			{	
				ges_freunde =  responseDetails.responseText.match(/hat ([0-9]+) Freunde\./)[1];
			
				GM_xmlhttpRequest({
					method: 'GET',
    				url: 'http://www.'+vz+'vz.net/Friends/All/'+owner,
    				headers: 
					{
	 					'User-Agent': 'Mozilla/4.0 (compatible) Greasemonkey',
						'Accept': 'application/atom+xml,application/xml,text/xml'
    				},
    				onload: function(responseDetails) 
					{	
						ges_freunde_owner = responseDetails.responseText.match(/hast ([0-9]+) Freunde\./)[1];
					
						GM_setValue(user+'_'+owner+'_'+vz, gem_freunde+','+ges_freunde+','+ges_freunde_owner);
					
						prozent_ausgabe(gem_freunde,ges_freunde,ges_freunde_owner);
				
					}
				});	
			}
		});	
	}
	
	function prozent_automatisch()
	{
	 	if(GM_getValue('prozent_auto')=="1")
	 	{
			GM_setValue('prozent_auto',"0");
		}
		else
		{
			GM_setValue('prozent_auto',"1");
		}
		document.getElementById('prozent_freunde_auto').innerHTML = "<i>Gespeichert!</i>";
	}

	function prozent_ausgabe(gem,ges,ges_o)
	{
	 	gem = parseInt(gem);
	 	ges = parseInt(ges);
	 	ges_o = parseInt(ges_o);
	 	
	 	document.getElementById('prozent_freunde_link').innerHTML = "<a href='javascript:'><i>[aktualisieren]</i></a>";
	 	document.getElementById('prozent_freunde_ausgabe').innerHTML = '<br>';
		
		if(GM_getValue('prozent_auto')=="1")
		{
			document.getElementById('prozent_freunde_ausgabe').innerHTML += '<span id="prozent_freunde_auto"><a href="javascript:">[automatisch Anzeigen ausstellen]</a></span>';

		}
		else
		{
			document.getElementById('prozent_freunde_ausgabe').innerHTML += '<span id="prozent_freunde_auto"><a href="javascript:">[automatisch Anzeigen einstellen]</a></span>';
		}
		
		document.getElementById('prozent_freunde_ausgabe').innerHTML += "<br>";
		document.getElementById('prozent_freunde_ausgabe').innerHTML += Math.round(((100/ges)*gem))+"% ("+gem+"/"+ges+") seiner/ihrer Freunde habt ihr gemeinsam.<br>";
		document.getElementById('prozent_freunde_ausgabe').innerHTML += Math.round(((100/ges_o)*gem))+"% ("+gem+"/"+ges_o+") deiner Freunde habt ihr gemeinsam.<br>";
		document.getElementById('prozent_freunde_ausgabe').innerHTML += "<b>"+Math.round(100/(((ges+ges_o-gem))/gem))+"%</b> ("+gem+"/"+(ges+ges_o-gem)+") euer Freunde habt ihr gemeinsam.";
		
		document.getElementById('prozent_freunde_auto').addEventListener('click', function (){ prozent_automatisch() }, false);
	}
	
	aus.innerHTML += '<span id="prozent_freunde_link"><a href="javascript:"><i>[mehr]</i></a></span><span id="prozent_freunde_ausgabe"></span>';
 	document.getElementById('prozent_freunde_link').addEventListener('click', function (){ prozent_freunde() }, false);
	
	if(GM_getValue(user+'_'+owner+'_'+vz))
	{
		var dat = GM_getValue(user+'_'+owner+'_'+vz);
		dat = dat.split(',');
		prozent_ausgabe(dat[0],dat[1],dat[2]);
	}
	else
	{
		if(GM_getValue('prozent_auto')=="1")
		{
			prozent_freunde();
		}
	}
}