MediaWiki:Common.js: Difference between revisions
mNo edit summary |
Default dark mode to OS preference |
||
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
// Click event for About Idea infobox | |||
$('.infobox-tab').click(function(e) { | $('.infobox-tab').click(function(e) { | ||
var tab = $(e.target).attr('data-tab'); | var tab = $(e.target).attr('data-tab'); | ||
| Line 9: | Line 10: | ||
}); | }); | ||
// Move infoboxes to the bottom of the article in mobile | |||
$(document).ready(function() { | $(document).ready(function() { | ||
if ($('body').hasClass('skin-minerva')) { | if ($('body').hasClass('skin-minerva')) { | ||
var infoboxes = $('#mf-section-0 .infobox-idea'); | var infoboxes = $('#mf-section-0 .infobox-idea'); | ||
| Line 19: | Line 19: | ||
} | } | ||
}); | }); | ||
defaultDarkModeToOs(); | |||
function defaultDarkModeToOs() { | |||
// Name of the cookie | |||
var cookieName = "IdeaSuprememwclientpreferences"; | |||
// Desired value if not already set | |||
var cookieValue = "skin-theme-clientpref-os"; | |||
// If the cookie doesn’t exist, create it | |||
if (!getCookie(cookieName)) { | |||
// Set cookie to expire in 1 year | |||
var expires = new Date(); | |||
expires.setFullYear(expires.getFullYear() + 1); | |||
document.cookie = cookieName + "=" + encodeURIComponent(cookieValue) + | |||
"; path=/; expires=" + expires.toUTCString(); | |||
} | |||
} | |||
// Helper function to get a cookie by name | |||
function getCookie(name) { | |||
var match = document.cookie.match(new RegExp("(^| )" + name + "=([^;]+)")); | |||
return match ? decodeURIComponent(match[2]) : null; | |||
} | |||