MediaWiki:Common.js
Nota: Após publicar, você pode ter que limpar o "cache" do seu navegador para ver as alterações.
- Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
- Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
- Internet Explorer/Edge: PressioneCtrl enquanto clica Recarregar, ou Pressione Ctrl-F5
- Opera: Pressione Ctrl-F5.
(function () {
'use strict';
var STORAGE_KEY = 'edda-theme';
function getPreferredTheme() {
var saved = null;
try { saved = localStorage.getItem(STORAGE_KEY); } catch (e) {}
if (saved === 'dark' || saved === 'light') return saved;
var prefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
return prefersDark ? 'dark' : 'light';
}
function applyTheme(theme) {
document.documentElement.setAttribute('data-theme', theme);
var btn = document.getElementById('edda-theme-toggle');
if (btn) btn.textContent = theme === 'dark' ? '☀️ Modo claro' : '🌙 Modo escuro';
}
var currentTheme = getPreferredTheme();
applyTheme(currentTheme);
document.addEventListener('DOMContentLoaded', function () {
var btn = document.createElement('button');
btn.id = 'edda-theme-toggle';
btn.type = 'button';
btn.setAttribute('aria-label', 'Alternar tema claro/escuro');
btn.textContent = currentTheme === 'dark' ? '☀️ Modo claro' : '🌙 Modo escuro';
btn.addEventListener('click', function () {
var next = document.documentElement.getAttribute('data-theme') === 'dark' ? 'light' : 'dark';
try { localStorage.setItem(STORAGE_KEY, next); } catch (e) {}
applyTheme(next);
});
document.body.appendChild(btn);
});
})();