Benutzer:Arnomane/Extratabs.js
Erscheinungsbild
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
// ==========================================================================
// BEGIN: MediaWiki interface button definition for Duesentrieb's image tools:
// "Check usage", "User image gallery", "Orphaned images of user" and
// "Untagged images of user".
// If you are located at an "Image:" you get the "check usage" tab, if you
// are at a "User:" page you get the "gallery", "orphans" and "untagged" tab.
// If you are on other pages these tabs do not get shown. These functions are
// enabled in Wikimedia Commons by default via [[Mediawiki:Monobook.js]] and
// its local language subpages.
// This script has been tested with Konqueror 3.5 and Firefox 1.5 and other
// browsers including Opera and Internet Explorer have been reported to work
// as well.
// written by Dbenbenn, Avatar, Duesentrieb and Arnomane
// Switch for people that don't want the extra tabs.
if (load_extratabs == true && skin == 'monobook')
{
// project URL without protocol handler
var tab_project = wgServer.replace("http://", "");
// Translations (variables for internationalisation and localisation):
// namespace names (there is only wgCanonicalNamespace variable; although not a
// problem for Commons but for non-english wikis, we make it easier for them
// reusing the script with these variables)
var tab_ns_image = 'Bild:';
var tab_ns_user = 'Benutzer:';
var tab_ns_special = 'Spezial:';
// Interface strings, translations get defined in the /<ISO-Code> sub pages
var tab_check_usage = 'check usage';
var tab_categorize = 'find categories';
var tab_log = 'log';
var tab_gallery = 'gallery';
var tab_orphans = 'orphans';
var tab_untagged = 'untagged';
var tab_tree = 'Tree';
var tab_catscan = 'CatScan';
var tab_blocklog = 'Blocklog';
var tab_wikipedia = "en";
importScript( 'Benutzer:Arnomane/Extratabs.js/' + wgUserLanguage );
function global_append_tab(url, name, id)
{
var na = document.createElement('a');
na.setAttribute('href', url);
var txt = document.createTextNode(name);
na.appendChild(txt);
var li = document.createElement('li');
if(id) li.id = id;
li.appendChild(na);
// Grab the element we want to append the tab and append the tab to it.
var c1 = document.getElementById('column-one');
var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0];
tabs.appendChild(li);
}
function global_add_image_tabs(imagetitle)
{
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/CheckUsage.php?i=' + imagetitle + '&w=_100000', tab_check_usage, 'ca-checkusage');
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/CommonSense.php?i=' + imagetitle + '&go-clean=yes' , tab_categorize, 'ca-commonsense');
global_append_tab('/w/index.php?title=' + tab_ns_special + 'Log&page=' + tab_ns_image + imagetitle, tab_log, 'ca-log');
}
function global_add_user_tabs(username)
{
// removing subpages from the link
username = username.split("/")[0];
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/Gallery.php?wiki=' + tab_project + '&img_user_text=' + username , tab_gallery, 'ca-gallery');
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/OrphanImages.php?wiki=' + tab_project + '&img_user_text=' + username , tab_orphans, 'ca-orphans');
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/UntaggedImages.php?wiki=' + tab_project + '&img_user_text=' + username , tab_untagged, 'ca-untagged');
}
function global_add_category_tabs(category)
{
global_append_tab('http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wiki=' + tab_project + '&basecat=' + category , tab_catscan, 'ca-catscan');
}
// On Special:Contributions, we add the user tabs just like for a user page.
// On Special:Blockip, we add a blocklog tab.
function global_add_special_tabs()
{
if (wgPageName == "Special:Blockip")
{
// so we don't break after blocking
var username = document.getElementsByName('wpBlockAddress')[0] ? document.getElementsByName('wpBlockAddress')[0].defaultValue : '';
if (username != '')
{
global_append_tab('/w/index.php?title=' + tab_ns_special + 'Log&type=block&page=' + tab_ns_user + username, tab_blocklog, 'ca-blocklog');
}
}
else if (wgPageName == "Special:Contributions")
{
var username = document.getElementById('contentSub').getElementsByTagName('a')[0].firstChild.nodeValue;
global_add_user_tabs(tab_ns_user + username);
}
}
function global_do_onload()
{
// title without namespace name
var title = wgTitle;
// Namespace numbers are (see [[m:Help:Variables]]):
// -1: Special
// 2: User
// 3: User_talk
// 6: Image
// 7: Image_talk
// 14: Category
switch(wgNamespaceNumber)
{
case -1:
global_add_special_tabs();
break;
case 2:
case 3:
global_add_user_tabs(title);
break;
case 6:
case 7:
global_add_image_tabs(title);
break;
case 14:
global_add_category_tabs(title);
break;
default:
// nothing
}
}
addOnloadHook( global_do_onload );
}
// END: MediaWiki interface button definition for Duesentrieb's image tools.
// ========================================================================