MediaWiki:Gadget-mainpage-localtime.js

维基百科,自由的百科全书

注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google ChromeFirefoxMicrosoft EdgeSafari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。

// <nowiki>

(function($, mw) { mw.loader.using([
    'mediawiki.user', 'mediawiki.util'
], function() { jQuery(function() {
    if (mw.config.get('wgAction') !== 'view') {
        return;
    }
    if (!mw.config.get('wgIsMainPage')) {
        return;
    }
    if (mw.config.get('wgDiffNewId') !== null) { // 差異模式下停用
        return;
    }
    if (mw.config.get('wgRevisionId') !== mw.config.get('wgCurRevisionId')) { // 檢視舊版本停用
        return;
    }
    var timecorrection = mw.user.options.get('timecorrection');
    if (timecorrection) {
        timecorrection = timecorrection.split('|')[1];
    } else {
        timecorrection = -(new Date().getTimezoneOffset());
    }
    timecorrection = parseInt(timecorrection);
    if (timecorrection > 0) {
        timecorrection = '+' + timecorrection;
    } else if (timecorrection == 0) {
        return;
    }
    var content = $('#mw-content-text', mw.util.$content);
    var text = '{{Wikipedia:首页|timecorrection=' + timecorrection + ' minutes}}';
    // content.text(text);
    $.post(
        mw.util.wikiScript('api'),
        {
            'action': 'parse',
            'title': mw.config.get('wgPageName'),
            'text': text,
            'prop': 'text',
            'disablepp': '',
            'format': 'json'
        },
        function(data) {
        	// workaround: 2020-06-02 出现首页展开后长度超限的问题,导致此工具解析不出结果。所以先判断一下解析结果是否包含警告 --WhitePhosphorus
        	if (!(data.parse.text['*'].indexOf("<!-- WARNING") > -1)) {
        		content.html(data.parse.text['*']);
        	}
        }
    );
}); }); })(jQuery, mediaWiki);

// </nowiki>