MediaWiki:Common.js: Difference between revisions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
/* Dark Mode Toggle | /* Dark Mode Toggle for Anisa Skin */ | ||
$(function() { | $(function() { | ||
// | // Add the toggle to the personal menu | ||
var | var toggle = $('<li id="pt-darkmode" class="mw-list-item"><a href="#"><span>Toggle Dark Mode</span></a></li>'); | ||
$('#p-personal .vector-menu-content-list, #p-personal ul').first().append(toggle); | |||
$('#p-personal ul').append( | |||
toggle.on('click', function(e) { | |||
e.preventDefault(); | e.preventDefault(); | ||
$('body').toggleClass('dark-mode'); | $('body').toggleClass('dark-mode'); | ||
// Save | // Save preference | ||
var isDark = $('body').hasClass('dark-mode'); | var isDark = $('body').hasClass('dark-mode'); | ||
localStorage.setItem(' | localStorage.setItem('anisa-dark-mode', isDark ? 'on' : 'off'); | ||
}); | }); | ||
// | // Load saved preference | ||
if (localStorage.getItem(' | if (localStorage.getItem('anisa-dark-mode') === 'on') { | ||
$('body').addClass('dark-mode'); | $('body').addClass('dark-mode'); | ||
} | } | ||
}); | }); | ||