Benutzer:Nightfly85/viewerInfo.js
aus Wikipedia, der freien Enzyklopädie
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
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
/**
* Anzahl der Beobachter für Artikel in einem Tab
* oben rechts anzeigen lassen mit Verweis auf
* Artikel-Informationsseite
*
* Nutzbar für den Vector- und Monobook-Skin
*
* Author: Benutzer:Nightfly85
*/
(function($, mw) {
function placeTab(text, url, title, isSelected) {
var liClass = isSelected ? 'selected' : '',
$liElement = $('<li id="ca-n-watchers" style="display:none" class="' + liClass +'" ><span><a title="' + title + '" href="' + url + '">' + text + '</a></span></li>');
$('#ca-history').after($liElement);
$liElement.slideDown();
}
var isInfoPage = (mw.config.get('wgAction') == 'info'),
articleName = mw.util.wikiUrlencode(mw.config.get('wgPageName')),
wikiBaseUrl = mw.config.get('wgServer') + mw.config.get('wgScriptPath'),
infoUrl = wikiBaseUrl + '/index.php?action=info&title=' + articleName,
apiUrl = wikiBaseUrl + '/api.php?action=query&prop=info&inprop=watchers&format=xml&titles=' + articleName;
if(isInfoPage) {
// The info tab is selected, so highlight the tab and forget the ajax stuff
placeTab('Informationen', infoUrl, 'Seiteninformationen', true);
} else {
if(false === mw.config.get('wgIsArticle') ) {
return; // Generated page
}
$.ajax({ url: apiUrl }).done(function(xmlData) {
var numViewer = $(xmlData).find('page').attr('watchers'),
numViewerText = (numViewer > 0) ? '<strong>' + numViewer + '</strong>' : 'Kaum';
placeTab(numViewerText + ' Beobachter', infoUrl, 'Seiteninformationen anzeigen lassen', false);
});
}
})(jQuery, mediaWiki);