improved dark mode user pref
Fixed invalid default Group
Fixed subscriptions showing when plugin was disabled
Fixed messages and notifications showing when disabled
This commit is contained in:
Joey Kimsey
2025-01-22 14:11:52 -05:00
parent ebfeead788
commit 5e99213601
15 changed files with 146 additions and 101 deletions

View File

@ -95,25 +95,45 @@ $(document).ready(function() {
});
document.addEventListener('DOMContentLoaded', function () {
const ttpDarkmode = document.getElementById('dark-mode-pref');
const toggleButton = document.getElementById('dark-mode-toggle');
const enableButton = document.getElementById('dark-mode-toggle-button');
const darkModeStylesheet = document.getElementById('dark-mode-stylesheet');
let currentState = '';
// Check if dark mode is saved in localStorage
if (localStorage.getItem('darkMode') === 'enabled') {
// Check if dark mode is set by ttp
if ( ttpDarkmode ) {
if ( 'true' == ttpDarkmode.value ) {
currentState = 'enabled';
}
if ( 'false' == ttpDarkmode.value ) {
currentState = 'disabled';
}
}
// Check if dark mode is set in localStorage
if ( '' == currentState ) {
if ( localStorage.getItem('darkMode') === 'enabled' ) {
currentState = 'enabled';
}
}
// Update current button states
if ( 'enabled' == currentState ) {
darkModeStylesheet.disabled = false;
if ( toggleButton ) {
toggleButton.checked = true;
}
if ( enableButton ) {
enableButton.innerText = 'Disable Now';
}
}
// Style striped table elements
document.querySelectorAll('.table-striped').forEach((table) => {
if (localStorage.getItem('darkMode') === 'enabled') {
if ( 'enabled' == currentState ) {
table.classList.add('table-dark');
} else {
table.classList.add('table-light')
@ -122,7 +142,7 @@ document.addEventListener('DOMContentLoaded', function () {
if ( enableButton ) {
enableButton.addEventListener('click', function () {
if (darkModeStylesheet.disabled) {
if ( darkModeStylesheet.disabled ) {
darkModeStylesheet.disabled = false;
localStorage.setItem('darkMode', 'enabled');
enableButton.innerText = 'Disable Now';
@ -138,21 +158,21 @@ document.addEventListener('DOMContentLoaded', function () {
toggleButton.addEventListener('click', function () {
if (darkModeStylesheet.disabled) {
toggleDarkModePref( true );
darkModeStylesheet.disabled = false;
localStorage.setItem('darkMode', 'enabled');
darkModeStylesheet.disabled = false;
localStorage.setItem('darkMode', 'enabled');
} else {
toggleDarkModePref( false );
darkModeStylesheet.disabled = true;
localStorage.setItem('darkMode', 'disabled');
}
document.querySelectorAll('.table-striped').forEach((table) => {
if (localStorage.getItem('darkMode') === 'enabled') {
table.classList.add('table-dark');
table.classList.remove('table-light');
} else {
toggleDarkModePref( false );
darkModeStylesheet.disabled = true;
localStorage.setItem('darkMode', 'disabled');
}
document.querySelectorAll('.table-striped').forEach((table) => {
if (localStorage.getItem('darkMode') === 'enabled') {
table.classList.add('table-dark');
table.classList.remove('table-light');
} else {
table.classList.add('table-light');
table.classList.remove('table-dark');
table.classList.add('table-light');
table.classList.remove('table-dark');
}
});
});