forked from deblan/side_menu
add dark mode colors
This commit is contained in:
parent
d8d6aededa
commit
9747820cb8
7 changed files with 339 additions and 125 deletions
|
|
@ -65,29 +65,61 @@ class CssController extends Controller
|
|||
|
||||
protected function getConfig(): array
|
||||
{
|
||||
$backgroundColor = $this->config->getAppValue('background-color', '#333333');
|
||||
$backgroundColorTo = $this->config->getAppValue('background-color-to', $backgroundColor);
|
||||
$isForced = $this->config->getAppValueBool('force', '0');
|
||||
$topMenuApps = $this->config->getAppValueArray('top-menu-apps', '[]');
|
||||
|
||||
$isAccessibilityAppEnabled = $this->config->getAppValueBool('enabled', '0', 'accessibility');
|
||||
$isBreezeDarkAppEnabled = $this->config->getAppValueBool('enabled', '0', 'breezedark');
|
||||
$isBreezeDarkGlobalEnabled = $this->config->getAppValueBool('theme_enabled', '0', 'breezedark');
|
||||
|
||||
if ($this->user) {
|
||||
$userTopMenuApps = $this->config->getUserValueArray($this->user, 'top-menu-apps', '[]');
|
||||
|
||||
if (!empty($userTopMenuApps) && !$isForced) {
|
||||
$topMenuApps = $userTopMenuApps;
|
||||
}
|
||||
|
||||
$isDarkThemeUserEnabled = $this->config->getUserValue($this->user, 'theme', '', 'accessibility') === 'dark';
|
||||
$isBreezeDarkUserEnabled = $this->config->getUserValue($this->user, 'theme_enabled', '', 'breezedark');
|
||||
|
||||
$isBreezeDarkUserEnabled = $isBreezeDarkUserEnabled === '1' || ($isBreezeDarkGlobalEnabled && $isBreezeDarkUserEnabled === '');
|
||||
} else {
|
||||
$isDarkThemeUserEnabled = false;
|
||||
$isBreezeDarkUserEnabled = false;
|
||||
}
|
||||
|
||||
$isDarkMode = ($isAccessibilityAppEnabled && $isDarkThemeUserEnabled) || ($isBreezeDarkAppEnabled && $isBreezeDarkUserEnabled);
|
||||
|
||||
if ($isDarkMode) {
|
||||
$backgroundColor = $this->config->getAppValue('dark-mode-background-color', '#333333');
|
||||
$backgroundColorTo = $this->config->getAppValue('dark-mode-background-color-to', $backgroundColor);
|
||||
$currentAppBackgroundColor = $this->config->getAppValue('dark-mode-current-app-background-color', '#444444');
|
||||
$loaderColor = $this->config->getAppValue('dark-mode-loader-color', '#cccccc');
|
||||
$textColor = $this->config->getAppValue('dark-mode-text-color', '#FFFFFF');
|
||||
$iconInvertFilter = abs($this->config->getAppValueInt('dark-mode-icon-invert-filter', '0')).'%';
|
||||
$iconOpacity = abs($this->config->getAppValueInt('dark-mode-icon-opacity', '100') / 100);
|
||||
$opener = $this->config->getAppValue('dark-mode-opener', 'side-menu-opener');
|
||||
} else {
|
||||
$backgroundColor = $this->config->getAppValue('background-color', '#333333');
|
||||
$backgroundColorTo = $this->config->getAppValue('background-color-to', $backgroundColor);
|
||||
$currentAppBackgroundColor = $this->config->getAppValue('current-app-background-color', '#444444');
|
||||
$loaderColor = $this->config->getAppValue('loader-color', '#0e75ac');
|
||||
$textColor = $this->config->getAppValue('text-color', '#FFFFFF');
|
||||
$iconInvertFilter = abs($this->config->getAppValueInt('icon-invert-filter', '0')).'%';
|
||||
$iconOpacity = abs($this->config->getAppValueInt('icon-opacity', '100') / 100);
|
||||
$opener = $this->config->getAppValue('opener', 'side-menu-opener');
|
||||
}
|
||||
|
||||
return [
|
||||
'vars' => [
|
||||
'background-color' => $backgroundColor,
|
||||
'background-color-to' => $backgroundColorTo,
|
||||
'current-app-background-color' => $this->config->getAppValue('current-app-background-color', '#444444'),
|
||||
'loader-color' => $this->config->getAppValue('loader-color', '#0e75ac'),
|
||||
'text-color' => $this->config->getAppValue('text-color', '#FFFFFF'),
|
||||
'opener' => $this->config->getAppValue('opener', 'side-menu-opener'),
|
||||
'icon-invert-filter' => abs($this->config->getAppValueInt('icon-invert-filter', '0')).'%',
|
||||
'icon-opacity' => abs($this->config->getAppValueInt('icon-opacity', '100') / 100),
|
||||
'current-app-background-color' => $currentAppBackgroundColor,
|
||||
'loader-color' => $loaderColor,
|
||||
'text-color' => $textColor,
|
||||
'opener' => $opener,
|
||||
'icon-invert-filter' => $iconInvertFilter,
|
||||
'icon-opacity' => $iconOpacity,
|
||||
],
|
||||
'display-logo' => $this->config->getAppValueBool('display-logo', '1'),
|
||||
'opener-only' => $this->config->getAppValueBool('opener-only', '0'),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue