Thành viên:Plantaest/dark-mode.js

Bách khoa toàn thư mở Wikipedia

Chú ý: Sau khi lưu thay đổi trang, bạn phải xóa bộ nhớ đệm của trình duyệt để nhìn thấy các thay đổi. Google Chrome, Firefox, Internet ExplorerSafari: Giữ phím ⇧ Shift và nhấn nút Reload/Tải lại trên thanh công cụ của trình duyệt. Để biết chi tiết và hướng dẫn cho các trình duyệt khác, xem Trợ giúp:Xóa bộ nhớ đệm.

$.when($.ready, mw.loader.using(['mediawiki.util', 'mediawiki.api'])).then(function() {
    var inDarkMode = !!mw.user.options.get('gadget-dark-mode');

    mw.util.addPortletLink('p-personal', '#', 'Chế độ tối', 'pt-darkmode', inDarkMode ? 'Tắt chế độ tối' : 'Bật chế độ tối', '', '#pt-watchlist');

    $('#pt-darkmode').on('click', function(e) {
        e.preventDefault();
        mw.notify(inDarkMode ? 'Đang tắt chế độ tối ...' : 'Đang bật chế độ tối ...');
        new mw.Api().saveOption('gadget-dark-mode', inDarkMode ? '0' : '1').then(function() {
            location.reload();
        });
    });
});