MediaWiki:Gadget-toggleDarkMode.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/**
* Toggles dark mode
*
* @author Mackan
* Adapted from https://oldschool.runescape.wiki/w/MediaWiki:Gadget-skinTogglesNew.js
*/
;(function($, mw) {
const DARKMODE_COOKIE = "darkmode";
let currentDark = localStorage.getItem(DARKMODE_COOKIE)
let portletLink
let self = {
init: () => {
portletLink = mw.util.addPortletLink(
'p-personal',
'',
'',
'pt-skin-toggles',
'Toggle darkmode',
null,
$('#pt-userpage, #pt-anonuserpage')
);
$(portletLink).find('a').addClass('oo-ui-icon-advanced').add('.floor-convention').click(function(e) {
e.preventDefault();
if (!formMade) {
mw.loader.using(['oojs-ui-core','oojs-ui-windows','oojs-ui-widgets']).then(self.initForm);
} else {
window.OOUIWindowManager.openWindow('skin');
}
})
}
}
mw.loader.using(['mediawiki.util'], function () {
$(self.init);
})
}(jQuery, mediaWiki));