Benutzer:PerfektesChaos/js/xtoolsPageinfo.js
Zur Navigation springen
Zur Suche springen
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
/// [[meta:User:Hedonil/XTools]] 2014-07-04
/*jshint curly:true, latedef:true, laxbreak:true, strict:true,
trailing:true, undef:true */
/*global window:false */
( function ( mw, $ ) {
"use strict";
var mwWG = mw.config.get( [ "wgAction",
"wgArticleId",
"wgCurRevisionId",
"wgRevisionId" ] ),
loadinganimation, $loading, $result;
function blink() {
var s;
switch ( $loading.html() ) {
case ".  " :
s = " . ";
break;
case " . " :
s = "  .";
break;
default :
s = ".  ";
}
$loading.html( s );
}
function execute() {
var wg = mw.config.get( [ "wgContentLanguage",
"wgDBname",
"wgPageName", // ??
"wgSiteName" ] ), // ??
$div = $( "<div>" );
$div.attr( { id: "xtools" } );
$div.css( { "font-size": "84%",
"line-height": "1.2em",
"margin": "0 0 0.4em 0.2em",
"width": "auto" } );
$loading = $( "<span>" );
$loading.attr( { id: "xtoolsloading" } );
$result = $( "<span>" );
$result.attr( { id: "xtoolsresult" } );
$div.append( $loading );
$div.append( $result );
$div.insertBefore( "#contentSub" );
loadinganimation = window.setInterval( blink, 300 );
mw.libs.xtoolsPageinfo = { };
mw.libs.xtoolsPageinfo.resultloaded = resultloaded;
window.xpagehistory = { }; // ?? TEMP server migration only
window.xpagehistory.resultloaded = resultloaded; // ??
mw.loader.load( "//tools.wmflabs.org/xtools/api.php"
+ "?db=" + wg.wgDBname
+ "&pageid=" + mwWG.wgArticleId
+ "&site=" + wg.wgSiteName // ??
+ "&pagetitle="
+ encodeURIComponent( wg.wgPageName ) // ??
+ "&obj=mw.libs.xtoolsPageinfo" // ??
+ "&uselang=" + wg.wgContentLanguage );
}
function resultloaded( res ) {
window.clearInterval( loadinganimation );
if ( $loading ) {
$loading.remove();
}
$result.html( res );
if ( typeof( window.xpagehistory ) === "object" ) { // legacy
delete window.xpagehistory;
}
}
if ( mwWG.wgArticleId && // no deleted or special pages
mwWG.wgCurRevisionId === mwWG.wgRevisionId && // current only
mwWG.wgAction === "view" ) {
$( execute );
}
}( window.mediaWiki, window.jQuery ) );