Benutzer:Prog/progcoder/userInfoPage.js

Aus Wikibooks

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
// <nowiki>

$(function(){
	if($.inArray(mw.config.get('wgAction'), ['view', 'purge']) == -1) return;
	if($.inArray(mw.config.get('wgNamespaceNumber'), [2, 3]) == -1) return;

	var box = $('#JSExtensionToolBox');
	if(!box.length){
		box = $('<div id="JSExtensionToolBox" />');
		box.insertBefore('#firstHeading');
	}

	var pagename = mw.config.get('wgPageName');

	var part = /[:]([^\/:]+)/.exec(pagename);
	if(!part) return;

	var username = part[1];

	var server = mw.config.get('wgServer');
	var path = mw.config.get('wgArticlePath');
	var namespaces = mw.config.get('wgFormattedNamespaces');

	box.prepend(
		$('<div class="JSUserPageLinkBox" />').append(
			'<a class="JSUserPageLink" href="'+
				server+path.replace('$1', namespaces[2]+':'+username)+'">'+username+'</a>',
			'<a class="JSUserPageLink" href="'+
				server+path.replace('$1', namespaces[3]+':'+username)+'">Talk</a>',
			'<a class="JSUserPageLink" href="'+
				server+path.replace('$1', namespaces[-1]+':Contributions/'+username)+'">Contributions</a>',
			'<a class="JSUserPageLink" href="https://tools.wmflabs.org/supercount/index.php?user='+
				username+'&project='+mw.config.get('wgContentLanguage')+'.'+mw.config.get('wgSiteName')+'">Info</a>',
			'<a class="JSUserPageLink" href="http://toolserver.org/~vvv/sulutil.php?user='+
				username+'">SUL</a>'
		)
	);

	var headline = $('<div class="JSUserPageInfoHeadline"><span>↴ </span>user info</div>');
	var content = $('<div class="JSUserPageInfoContent" style="display:none;position:absolute;right:0;z-index:1;"/>');
	headline.one('click', function(){progcoder.userInfo(username, content);});
	headline.click(function(){content.toggle();});
	box.prepend($('<div class="JSUserPageInfoBox" />').append(headline, content));

	var css = mw.util.addCSS(
		'.JSUserPageLink {margin:0px 5px}'+
		'.JSUserPageInfoContent {text-align:left;background-color:#fff;border:1px solid black;padding:3px;}'+
		'.JSUserPageInfoHeadline {font-weight:bold;}'+
		'#JSExtensionToolBox {text-align:right;font-size:0.8em;}'
	);
});

// </nowiki>