//
// Benutzerseiten-Navigation
// Ursprünglich von [[Benutzer:Joschua]], danach [[Benutzer:V.R.S.]]
// mittlerweile eigene Version und teilweise erweitert ([[Benutzer:Euphoriceyes]])
addOnloadHook(function (){
// Konfiobjekt
var upn = {
// Wiki-Adresse meist /wiki/ mancherorts /wiki/index.php/
WikiAddr : '/wiki/',
// verschiedene Seitennamen im Projekt, Spracheinstellungen
UserPageName : 'Benutzer',
LogName : 'Spezial:Logbuch',
PrefixindexName : 'Spezial:Präfixindex',
ContributionsName : 'Spezial:Beiträge',
MailName : 'Spezial:E-Mail',
RedirectText : 'Weitergeleitet von ',
// Beschriftung
// Siehe weiter unten, falls ein Link nicht angezeigt werden soll.
LangFor : 'Für',
LangTalk : 'Diskussion',
LangTalkNewSection : '<small>(+)</small>',
LangMail : '@',
LangVal : 'Bewertung',
LangContributions : 'Beiträge',
LangUserSubPages : 'Benutzerseiten',
LangLogBlock : 'Sperr-',
LangLogRights : 'Rechte',
LangLog : 'Logbücher',
LangEditcount : 'Editcount',
LangEditcountMisza : 'Misza',
LangEditcountDaB : 'DaB.',
// technisches
CurrentUser : wgTitle.split("/")[0], // Benutzernamen feststellen
Target : document.getElementById('contentSub'), // Hierhin wird der Text geparst
// Diese Funktion erstellt die Links
Link : function(href, name, spacer){
return '<a href="' + href + '">' + name + '</a>' + (spacer ? spacer : '');
}
}
// Ausführung
if(wgCanonicalNamespace === 'User_talk' || wgCanonicalNamespace === 'User') { // Benutzer(diskussions|)seite?
// Originaltext (vom Wiki oder anderen Skripten generiert) zurücksetzen, Redirects nicht
if(upn.Target.hasChildNodes()) { // Fehlermeldung vermeiden
upn.Redirect = new RegExp('^[\(]' + upn.RedirectText);
if (upn.Target.firstChild.nodeType === 3 && upn.Redirect.test(upn.Target.firstChild.data)) {
upn.Target.innerHTML += ' | ';
} else {
upn.Target.innerHTML = '';
}
}
// Hier werden die Links in die Seite geschrieben
// Falls einer der folgenden Links nicht angezeigt werden soll, kann die betreffende
// Zeile mittels zwei Slashes // auskommentiert werden. Am Schluss der Zeilen kann
// allenfalls das Trennzeichen zwischen den Links geändert werden.
// Für
upn.Target.innerHTML += upn.LangFor + ' ';
// Link auf die Benutzerseite
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'User:' + upn.CurrentUser, upn.CurrentUser, ' | ');
// Link auf die Diskussionsseite
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'User_Talk:' + upn.CurrentUser, upn.LangTalk, ' ');
// Link auf die Diskussionsseite (Zum einstellen eines neuen Absatzes))
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'User_Talk:' + upn.CurrentUser + '?action=edit§ion=new', upn.LangTalkNewSection, ' | ');
// Link auf die E-Mail-Kontaktseite (Nicht alle Benutzer haben diese Funktion eingeschaltet)
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Emailuser/' + upn.CurrentUser, upn.LangMail, ' | ');
// Link auf die Bewertungsseite
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'User:' + upn.CurrentUser + '/Bewertung', upn.LangVal, ' | ');
// Link auf die Beitragsseite
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Contributions/' + upn.CurrentUser, upn.LangContributions, ' | ');
// Suche nach Seiten im Benutzernamensraum
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Prefixindex?namespace=2&from=' + upn.CurrentUser, upn.LangUserSubPages, ' | ');
// Block- und Rechtelog
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Log?type=block&user=&page=Benutzer:' + upn.CurrentUser, upn.LangLogBlock, '/');
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Log?type=rights&user=&page=Benutzer:' + upn.CurrentUser, upn.LangLogRights, 'log | ');
// Benutzerlogs
upn.Target.innerHTML += upn.Link(upn.WikiAddr + 'Special:Log?user=' + upn.CurrentUser, upn.LangLog, ' | ');
// zwei Editcounts
upn.Target.innerHTML += upn.LangEditcount + ' (';
// Link auf den Beitragszähler (Misza)
upn.Target.innerHTML += upn.Link('http://toolserver.org/~misza13/cgi-bin/count.py?user=' + upn.CurrentUser + '&project=dewiki_p&edits=on&logs=on', upn.LangEditcountMisza, '|');
// Beitragszähler die Zweite (DaB.)
upn.Target.innerHTML += upn.Link('http://stable.toolserver.org/editcount/result?username=' + upn.CurrentUser + '&projectname=dewiki&showgraphs=2d', upn.LangEditcountDaB, ')');
}
});
//