'Light', 'ocean' => 'Ocean', 'graphite' => 'Graphite', ]; require_auth(); $current = user_theme(); $timezoneOptions = modules()->timezones(); $nexusSettings = nexus_settings(); $isAdmin = auth_is_admin(); $notice = null; if ($_SERVER['REQUEST_METHOD'] === 'POST') { $settingsSection = trim((string) ($_POST['settings_section'] ?? 'theme')); if ($settingsSection === 'nexus' && $isAdmin) { $displayTimezoneCustom = isset($_POST['display_timezone_custom']) ? '1' : '0'; $displayTimezone = trim((string) ($_POST['display_timezone'] ?? '')); $cronTimezone = trim((string) ($_POST['cron_timezone'] ?? '')); foreach (['displayTimezone' => $displayTimezone, 'cronTimezone' => $cronTimezone] as $key => $value) { if ($value !== '') { try { new DateTimeZone($value); } catch (\Throwable) { $$key = ''; } } } $nexusSettings['display_timezone_custom'] = $displayTimezoneCustom; $nexusSettings['display_timezone'] = $displayTimezoneCustom === '1' ? $displayTimezone : ''; $nexusSettings['cron_timezone'] = $cronTimezone; nexus_save_settings($nexusSettings); $nexusSettings = nexus_settings(); $notice = 'Nexus-Einstellungen gespeichert.'; } else { $theme = (string)($_POST['theme'] ?? 'light'); if (!isset($themes[$theme])) { $theme = 'light'; } set_user_theme($theme); $current = $theme; $notice = 'Theme gespeichert.'; } } $systemTimezone = nexus_system_timezone_name(); $effectiveDisplayTimezone = nexus_display_timezone_name(); $effectiveCronTimezone = nexus_cron_timezone_name(); $displayTimezoneCustom = !empty($nexusSettings['display_timezone_custom']); $savedDisplayTimezone = trim((string) ($nexusSettings['display_timezone'] ?? '')); $savedCronTimezone = trim((string) ($nexusSettings['cron_timezone'] ?? '')); ?>
Persönliche Anzeige und systemweite Standardwerte.
Diese Werte werden von Modulen als Default übernommen, sofern dort kein eigener Override gesetzt ist.