打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Common.js:修订间差异

MediaWiki界面页面
用mw.Api退出跳过确认页,同步清除主站Cookie
退出后always跳首页
第10行: 第10行:


             new mw.Api().postWithToken( 'csrf', { action: 'logout' } )
             new mw.Api().postWithToken( 'csrf', { action: 'logout' } )
             .then( function() {
             .always( function() {
                 return fetch( MAIN_SITE + '/api/auth/cookie-logout', { method: 'POST', credentials: 'include' } );
                 fetch( MAIN_SITE + '/api/auth/cookie-logout', { method: 'POST', credentials: 'include' } )
            } )
                .catch( function(){} )
            .catch( function(){} )
                .finally( function() {
            .finally( function() {
                    window.location.href = WIKI_BASE + '/wiki/首页';
                window.location.href = WIKI_BASE + '/wiki/首页';
                } );
             } );
             } );



2026年4月15日 (三) 16:49的版本

( function () {
    'use strict';
    var MAIN_SITE = 'https://www.dolshipmaker.vip';
    var WIKI_BASE = 'https://wiki.dolshipmaker.vip';

    function setupLogout() {
        $( document ).on( 'click', '[href*="action=logout"], [href*="UserLogout"], [data-mw-logouturl]', function(e) {
            e.preventDefault();
            e.stopImmediatePropagation();

            new mw.Api().postWithToken( 'csrf', { action: 'logout' } )
            .always( function() {
                fetch( MAIN_SITE + '/api/auth/cookie-logout', { method: 'POST', credentials: 'include' } )
                .catch( function(){} )
                .finally( function() {
                    window.location.href = WIKI_BASE + '/wiki/首页';
                } );
            } );

            return false;
        } );
    }

    function interceptLoginButton() {
        $( document ).on( 'click', 'a[href*="Special:UserLogin"], a[href*="action=login"]', function(e) {
            e.preventDefault();
            window.location.href = MAIN_SITE + '/login.html?redirect=' + encodeURIComponent( window.location.href );
        } );
    }

    function interceptRegisterButton() {
        $( document ).on( 'click', 'a[href*="Special:CreateAccount"], a[href*="action=createaccount"]', function(e) {
            e.preventDefault();
            window.location.href = MAIN_SITE + '/register.html?redirect=' + encodeURIComponent( window.location.href );
        } );
    }

    function interceptEditForAnon() {
        if ( mw.config.get( 'wgUserId' ) !== 0 ) return;
        $( document ).on( 'click', 'a[href*="action=edit"], a[href*="veaction=edit"]', function(e) {
            e.preventDefault();
            window.location.href = MAIN_SITE + '/login.html?redirect=' + encodeURIComponent( window.location.href );
        } );
    }

    mw.loader.using( 'mediawiki.util' ).done( function() {
        $( document ).ready( function() {
            setupLogout();
            interceptLoginButton();
            interceptRegisterButton();
            interceptEditForAnon();
        } );
    } );
}() );