Viewing File: /home/ubuntu/ridge-crop-landing-ui-revamp/assets/js/theme-script.js
// Immediately apply the theme based on localStorage
(function() {
const darkMode = localStorage.getItem('darkMode');
const themeClass = darkMode === 'enabled' ? 'dark' : 'light';
// Apply the theme class to the document immediately
document.documentElement.className = themeClass;
// Wait for DOMContentLoaded to set up event listeners
document.addEventListener('DOMContentLoaded', () => {
const darkModeToggle = document.getElementById('dark-mode-toggle');
const lightModeToggle = document.getElementById('light-mode-toggle');
const toggleMode = (isDarkMode) => {
document.documentElement.classList.toggle('dark', isDarkMode);
localStorage.setItem('darkMode', isDarkMode ? 'enabled' : 'disabled');
updateToggleButtons(isDarkMode);
};
const updateToggleButtons = (isDarkMode) => {
if (isDarkMode) {
darkModeToggle.classList.remove('activate');
lightModeToggle.classList.add('activate');
} else {
lightModeToggle.classList.remove('activate');
darkModeToggle.classList.add('activate');
}
};
// Initial activation based on current theme
updateToggleButtons(themeClass === 'dark');
// Add event listeners if elements are present
if (darkModeToggle && lightModeToggle) {
darkModeToggle.addEventListener('click', () => toggleMode(true));
lightModeToggle.addEventListener('click', () => toggleMode(false));
}
});
})();
Back to Directory
File Manager