Benutzer:BLueFiSH.as/JS/addtabs.js
< Benutzer:BLueFiSH.as | JS
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
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* =============================================================================================== */
/* die folgenden Funktionen fügen ein paar hilfreiche Tabs in die Tableiste über einer Seite hinzu */
/* gefunden bei [[en:User:Dbenbenn/monobook.js]] und mit eigenen Sachen erweitert */
var editlk;
var username;
if ( typeof IamAdmin == 'undefined' ) IamAdmin = false;
includePage('Benutzer:BLueFiSH.as/JS/commonsmover.js');
// Returns <li><a href="url">name</a></li>
function addlilink(url, name)
{ var na = document.createElement('a');
na.setAttribute('href', url);
var txt = document.createTextNode(name);
na.appendChild(txt);
var li = document.createElement('li');
li.appendChild(na);
return li;
}
// Gets the URL version of the page title.
function get_tidy_title()
{ editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
// cut everything up to "title=" from the start and everything past "&action=edit" from the end
editlk = editlk.substring(editlk.indexOf('title=') + 6, editlk.lastIndexOf('&action=edit'));
return editlk;
}
function get_username()
{ if ( wgCanonicalSpecialPageName == "Contributions" )
{ if ( docURL.indexOf('&target=') > 0 )
{ username = docURL.substr(docURL.indexOf('&target=')+8, docURL.length - docURL.indexOf('&target=')+8);
}
else
{ username = docURL.substr(docURL.indexOf('Beitr%C3%A4ge/')+14, docURL.length - docURL.indexOf('Beitr%C3%A4ge/')+14);
}
}
else if (editlk)
{ username = editlk.replace('Benutzer_Diskussion:','');
username = editlk.replace('Benutzer:','');
}
}
// Adds "userlog", "block" and "blocklog" tabs to User: and User talk: pages.
function add_user_tabs(tabs, editlk)
{ editlk = editlk.substring(editlk.indexOf(':') + 1);
var slloc = editlk.indexOf('/');
if (slloc > 0) editlk = editlk.substring(0, slloc);
tabs.appendChild(addlilink(wplang+'Special:Blockip&ip=' + editlk, 'block'));
tabs.appendChild(addlilink(wplang+'Special:Log&type=block&page=Benutzer:' + editlk, 'blocklog'));
tabs.appendChild(addlilink(wplang+'Special:Log&user=' + editlk, 'userlog'));
if (!isNaN(editlk.substr(0, 2))) tabs.appendChild(addlilink('http://whois.domaintools.com/' + editlk, 'WhoIs'));
}
// Adds "userlog", "block" and "blocklog" tabs to Special:Contributions
function add_contributions_tabs(tabs, username)
{
if (!isNaN(username.substr(0, 2))) tabs.appendChild(addlilink(wpkurz+'Benutzer:' + username, 'Userpage'));
if (!isNaN(username.substr(0, 2))) tabs.appendChild(addlilink('http://whois.domaintools.com/' + username, 'WhoIs'));
tabs.appendChild(addlilink(wplang+'Spezial:Logbuch&type=upload&user='+username, 'Bilder'));
}
// Adds watchlist tabs to commons and en.wp to Special:Watchlist
function add_watchlist_tabs(tabs)
{
//tabs.appendChild(addlilink(wplang+'Spezial:Beobachtungsliste&action=edit', 'bearbeiten'));
//tabs.appendChild(addlilink(wplang+'Spezial:Beobachtungsliste&action=raw', 'im-/export'));
tabs.appendChild(addlilink(commonslang+'Special:Watchlist&hideOwn=1', 'commons'));
tabs.appendChild(addlilink(wpenkurz+'Special:Watchlist', 'en.wp'));
tabs.appendChild(addlilink(wplang+'Spezial:Logbuch&type=delete&user=BLueFiSH.as', 'mylog'));
}
// Adds "pagelog" to other pages
function add_pagelog_tab(tabs)
{ tabs.appendChild(addlilink(wplang+'Special:Log&page=' + wgPageName, 'pagelog'));
}
function openInterwikiImage()
{ wpdomain = prompt('Sprachdomain?','');
if (wpdomain != false) window.open('http://'+wpdomain+'.wikipedia.org/wiki/Image:' + wgTitle);
}
function add_image_tabs(tabs)
{ tabs.appendChild(addlilink(commonskurz+'Image:'+wgTitle, 'commons'));
tabs.appendChild(addlilink('javascript:GetImageInfoAndOpenUploadpage();', 'C-UP'));
tabs.appendChild(addlilink(wpenkurz+'Image:'+wgTitle, 'en'));
tabs.appendChild(addlilink('javascript:openInterwikiImage();', 'lang..'));
tabs.appendChild(addlilink('http://tools.wikimedia.de/~daniel/WikiSense/CheckUsage.php?i='+wgTitle +'&w=_160&m=&x=&go=Check+Usage&b=0', 'Usage'));
add_pagelog_tab(tabs, wgPageName);
}
function addTabs()
{ var tabs = document.getElementById('column-one').getElementsByTagName('div')[0].getElementsByTagName('ul')[0];
get_username();
if ( document.getElementById("ca-edit") )
{ var title = get_tidy_title();
if ( wgCanonicalNamespace == "Image" )
add_image_tabs(tabs);
else if ( IamAdmin && (wgCanonicalNamespace == "User" || wgCanonicalNamespace == "User_talk") )
{ add_user_tabs(tabs, title);
add_pagelog_tab(tabs);
}
else add_pagelog_tab(tabs);
}
else if ( wgCanonicalSpecialPageName == "Contributions" )
add_contributions_tabs(tabs, username);
else if ( wgCanonicalSpecialPageName == "Watchlist" )
add_watchlist_tabs(tabs);
}