User:MetalManeMc/vector.js: Difference between revisions
Jump to navigation
Jump to search
MetalManeMc (talk | contribs) No edit summary Tag: Reverted |
MetalManeMc (talk | contribs) No edit summary Tag: Reverted |
||
Line 41: | Line 41: | ||
new mw.Api().saveOption('userjs-theme','dark-grey').then(function() { | new mw.Api().saveOption('userjs-theme','dark-grey').then(function() { | ||
mw.user.options.set('userjs-theme','dark-grey'); | mw.user.options.set('userjs-theme','dark-grey'); | ||
mw.loader.using(['ext.gadget. | mw.loader.using(['ext.gadget.darkvector']).then(function() { | ||
$('body').addClass('theme-dark-grey'); | $('body').addClass('theme-dark-grey'); | ||
$('body').removeClass('theme-light'); | $('body').removeClass('theme-light'); |
Revision as of 14:35, 20 December 2023
/**
* Toggle for dark mode testing
* Inspired from https://minecraft.wiki/w/MediaWiki:Gadget-darkmode.js
*/
portletLink = mw.util.addPortletLink(
'p-personal',
'',
'',
'pt-dm-toggle',
'Preview in light mode',
null,
$('#pt-userpage, #pt-anonuserpage, #pt-createaccount')[0]
);
$(portletLink).find('a').click(function(e) {
e.preventDefault();
if (mw.user.isAnon()) {
if (mw.cookie.get('theme',null,'dark-grey')==='dark-grey') {
mw.cookie.set('theme','light');
mw.loader.using(['ext.gadget.theme-light']).then(function() {
$('body').addClass('theme-light');
$('body').removeClass('theme-dark-grey');
});
}
else {
mw.cookie.set('theme','dark-grey');
$('body').addClass('theme-dark-grey');
$('body').removeClass('theme-light');
}
}
else {
if (mw.user.options.get('userjs-theme','dark-grey')==='dark-grey') {
new mw.Api().saveOption('userjs-theme','light').then(function() {
mw.user.options.set('userjs-theme','light');
$('body').addClass('theme-light');
$('body').removeClass('theme-dark-grey');
});
}
else {
new mw.Api().saveOption('userjs-theme','dark-grey').then(function() {
mw.user.options.set('userjs-theme','dark-grey');
mw.loader.using(['ext.gadget.darkvector']).then(function() {
$('body').addClass('theme-dark-grey');
$('body').removeClass('theme-light');
});
});
}
}
});