/********************************/
/* Wahre Benutzernamen anzeigen */
/********************************/
// Fügt Benutzernamen in Links auf Benutzerseiten ein
//
// Einbinden mit includeJS aus meiner standard.js:
// includeJS(']');
//
// Beim Einbinden mittels anderer Methoden bitte obigen Wikilink
// explizit angeben (z.B. in einem Kommentar)
/* Hilfsfunktion: Dekodieren von UTF8 */
function decode_utf8(text)
{
decoded = '';
var tail = 0;
var codepoint;
for (var i = 0; i < text.length; ++i)
{
var charcode = text.charCodeAt(i);
if (tail != 0)
{
codepoint = (codepoint << 6) + (charcode & 0x3f);
--tail;
if (tail == 0)
decoded += String.fromCharCode(codepoint);
}
else
{
if (charcode < 0x80)
decoded += String.fromCharCode(charcode);
else
{
var tail = 1; // number of following 10xxxxxx values
while ((charcode & (0x40 >> tail)) != 0)
++tail;
codepoint = charcode & ((0x80 >> tail) - 1)
}
}
}
return decoded
}
function showusers()
{
/* Benutzernamen aus Hyperlink extrahieren */
function getusername(a)
{
if (!a.href)
return null;
if (a.host != "de.wikipedia.org")
return null;
var parts = /\/Benutzer:(*)(#.*)?$/.exec(a.href)
if (!parts)
return null;
return decode_utf8(unescape(parts)).replace(/_/g,' ');
}
var links = document.links
for (i = 0; i < links.length; ++i)
{
var username =getusername(links);
var text = links.text
text = text.substr(0,1).toUpperCase()+text.substr(1)
if (username && username != text && "Benutzer:"+username != text)
{
var newtext = document.createTextNode(" (" + username + ")")
var span = document.createElement("span")
span.setAttribute("class", "loginname")
span.appendChild(newtext)
links.appendChild(span)
}
}
}
$(showusers)