Benutzer:Joschua/Userpage Navigation/js
//
// Benutzerseiten-Navigation
// Ursprünglich von [[Benutzer:Joschua]], wird jetzt von [[Benutzer:V.R.S.]] gewartet
// Informationen: [[Benutzer:Joschua/Userpage_Navigation]]
// Fragen: [[Benutzer_Diskussion:V.R.S.]]
// aktuelle Version: [[Benutzer:V.R.S./upn.js]]
// todo: vielleicht auch auf Spezialseiten?
(wgCanonicalNamespace === 'User_talk' || wgCanonicalNamespace === 'User') // nur auf Benutzer(diskussions)seiten
&& addOnloadHook(function (){
var upn = { // Speicherobjekt
wikiAddr : wgArticlePath.replace('$1', ''), // ist hier /wiki/
target : document.getElementById('contentSub'), // Hier kommt der Text rein
user : mw.config.get('wgTitle').split("/")[0] // Benutzername aus Seitennamen auslesen
}
var nav = [ // Navi
'Für ', [upn.wikiAddr + 'Benutzer:' + upn.user, upn.user], // aktueller Benutzer
' | ', [upn.wikiAddr + 'Benutzer Diskussion:' + upn.user, 'Diskussion'],
' ', [upn.wikiAddr + 'Benutzer Diskussion:' + upn.user + '?action=edit§ion=new', '(+)'], // Neuer Diskussionsabschnitt
' | ', [upn.wikiAddr + 'Spezial:E-Mail/' + upn.user, '@'],
' | ', [upn.wikiAddr + 'Benutzer:' + upn.user + '/Bewertung', 'Bewertung'],
' | ', [upn.wikiAddr + 'Spezial:Beiträge/' + upn.user, 'Beiträge'],
' | ', [upn.wikiAddr + 'Spezial:Präfixindex/Benutzer:' + upn.user, 'Benutzerseiten'],
' | ', [upn.wikiAddr + 'Spezial:Log?type=block&user=&page=Benutzer:' + upn.user, 'Sperrlog'],
' | ', [upn.wikiAddr + 'Spezial:Log?type=rights&user=&page=Benutzer:' + upn.user, 'Rechte'],
' | ', [upn.wikiAddr + 'Spezial:Logbuch/' + upn.user, 'Logbücher'],
// der klassische Editcount (Interiot)
' | Editcount: ', ['http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user=' + upn.user + '&dbname=dewiki_p', 'Int'],
// DaB.s Editcount ist hübscher, hat mehr Statistik, ein funktionierendes Opt-In und läuft auf einem stabileren Server
// '/', ['http://stable.toolserver.org/editcount/result?username=' + upn.user + '&projectname=dewiki&showgraphs=2d', 'DaB.']
// DaB.s Editcount nicht mehr verfügbar, geändert auf Simplcount von Soxred (schneller Counter mit Basisinfos)
'/', ['http://toolserver.org/~soxred93/simplecount/index.php?lang=de&wiki=wikipedia&name=' + upn.user , 'Sox/Q']
];
if ( // Weiterleitungshinweis nicht entfernen, alles andere schon
upn.target.hasChildNodes() // Kindknoten vorhanden?
&& upn.target.innerHTML.indexOf('(Weitergeleitet von ') >= 0 // Weiterleitung?
) upn.target.innerHTML =
upn.target.innerHTML.match(/Weitergeleitet von <a .*?<\/a>/)[0] + ' | ';
else upn.target.innerHTML = '';
// Navileiste erstellen
function navLinkConstructor(href, text){
var navProto = document.createElement('a');
navProto.setAttribute('href', href);
navProto.appendChild(document.createTextNode(text));
return navProto;
}
for (var i = 0; i < nav.length; i++) {
if (nav[i].constructor === String){
upn.target.appendChild(document.createTextNode(nav[i]));
} else {
upn.target.appendChild(navLinkConstructor(nav[i][0], nav[i][1]));
}
}
});
//