mc-cms-namelessmc/modules/Core/queries/dark_light_mode.php
tadhgboyle e569c92cde
Update Template config to use Settings system rather than Cache (#3669)
* Update Template config to use Settings system rather than Cache

* Remove is_default from templates, use only the Settings value

* Convert template_settings

* lint

* fix

* fix
2025-06-04 21:45:50 -07:00

36 lines
871 B
PHP

<?php
// Toggle dark/light mode
header('Content-type: application/json;charset=utf-8');
// Get website dark mode setting value
$darkMode = Settings::get('dark_mode', '0');
if (!$user->isLoggedIn()) {
if (Cookie::exists('night_mode')) {
$darkMode = Cookie::get('night_mode') == '1' ? '0' : '1';
} else {
$darkMode = $darkMode != '1' ? '1' : '0';
}
Cookie::put(
'night_mode',
$darkMode,
time() + (10 * 365 * 24 * 60 * 60)
);
} else {
if (!Token::check()) {
die(json_encode(['error' => 'Invalid token']));
}
if ($user->data()->night_mode === null) {
$darkMode = $darkMode != '1' ? '1' : '0';
} else {
$darkMode = $user->data()->night_mode == '1' ? '0' : '1';
}
$user->update([
'night_mode' => $darkMode
]);
}
die(json_encode(['success' => true]));