MediaViki:Gadget-XTools-ArticleInfo.js

Qeyd:Yaddaşa verdikdən sonra dəyişikliklərin görsənməsi üçün brouzerinizin cache-indən yan keçilməsi lazım ola bilər. Mozilla / Firefox / Safari: Reload düyməsini basarkən eyni vaxtda Shift-i basılı tutun və ya Ctrl-Shift-R-a basın. (Apple Mac-da Cmd-Shift-R). İE: Refresh düyməsini basarkən eyni vaxtda Ctrl-i basılı tutun və ya Ctrl-F5-ə basın. Konqueror: Sadəcə Reload düyməsinə və ya F5-ə basın. Opera brouzeri istifadəçiləri Tools→Preferences-dən cache-lərini tamamilə təmizləməli ola bilərlər.

/**
 * XTools ArticleInfo gadget
 * Based on meta.wikimedia.org/wiki/User:Hedonil/XTools
 * Documentation: mediawiki.org/wiki/XTools/ArticleInfo_gadget
 * Released under GPL 3.0+ license
 * For updates, please copy and paste from https://xtools.wmcloud.org/articleinfo-gadget.js
 */
$(function () {
    if (mw.config.get('wgArticleId') === 0 || // no deleted articles, no special pages
            mw.config.get('wgCurRevisionId') !== mw.config.get('wgRevisionId') || // only current revision
            mw.config.get('wgAction') !== 'view') { // only when viewing a page, not editing
        return;
    }

    var $result,
        markup = "<div id='xtools' style='font-size:84%; line-height:1.2em;" +
        "width:auto;'><span id='xtools_result'>.</span></div>";
    $(markup).insertBefore('#contentSub');
    $result = $('#xtools_result');

    var loadinganimation = window.setInterval(function () {
        if ($result.html() === '.&nbsp;&nbsp;') {
            $result.html('&nbsp;.&nbsp;');
        } else if ($result.html() === '&nbsp;.&nbsp;') {
            $result.html('&nbsp;&nbsp;.');
        } else {
            $result.html('.&nbsp;&nbsp;');
        }
    }, 300);

    $.get(
        'https://xtools.wmcloud.org/api/page/articleinfo/' +
        mw.config.get('wgServerName') + '/' +
        mw.config.get('wgPageName').replace(/["?%&+\\]/g, escape) + '?format=html' +
        '&uselang=' + mw.config.get('wgUserLanguage')
    ).done(function (result) {
        $result.html(result);
        clearInterval(loadinganimation);
    });
});