MediaWiki:Common.js
Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
- Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
- Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
- Opera: Нажмите Ctrl+F5.
;(function($, mw){
if (mw.config.get('wgPageName') !== 'Обсуждение_участника:Pok') return;
var COOKIES = {
DARK: 'darkmode',
THEME: 'theme'
},
$tools = $('#user-tools'),
currentMode;
function loadMode() {
var theme = $.cookie(COOKIES.THEME);
if (theme) return theme;
return $.cookie(COOKIES.DARK) === 'true' ? 'dark' : 'light';
}
function saveMode(mode) {
$.cookie(COOKIES.THEME, mode, { expires: 365, path: '/' });
$.cookie(COOKIES.DARK, mode === 'dark', { expires: 365, path: '/' });
}
function applyMode(mode) {
$('body')
.toggleClass('wgl-theme-dark', mode === 'dark')
.toggleClass('wgl-theme-light', mode === 'light');
mw.hook('wgl.themeChanged').fire(mode);
}
currentMode = loadMode();
applyMode(currentMode);
var $toggle = $(
'<div id="pt-dm-toggle">' +
'<a href="#" title="Переключить тёмную тему"><span></span></a>' +
'</div>'
);
$tools.prepend($toggle);
$toggle.on('click', 'a', function(e) {
e.preventDefault();
currentMode = currentMode === 'dark' ? 'light' : 'dark';
saveMode(currentMode);
applyMode(currentMode);
});
}(jQuery, mediaWiki));