diff --git a/library/Icingadb/Web/Controller.php b/library/Icingadb/Web/Controller.php index 0145eb552..e804e0947 100644 --- a/library/Icingadb/Web/Controller.php +++ b/library/Icingadb/Web/Controller.php @@ -401,6 +401,16 @@ function (ViewModeSwitcher $viewModeSwitcher) use ($user, $preferredModes, $pagi $viewMode = $viewModeSwitcher->getValue($viewModeSwitcher->getViewModeParam()); $requestUrl = Url::fromRequest(); + if ($viewMode === 'minimal' && $requestUrl->getPath() === 'icingadb/hostgroups') { + $requestUrl = Url::fromPath('icingadb/hostgroups/grid')->setParams($requestUrl->getParams()); + } elseif ($viewMode !== 'minimal' && $requestUrl->getPath() === 'icingadb/hostgroups/grid') { + $requestUrl = Url::fromPath('icingadb/hostgroups')->setParams($requestUrl->getParams()); + } elseif ($viewMode === 'minimal' && $requestUrl->getPath() === 'icingadb/servicegroups') { + $requestUrl = Url::fromPath('icingadb/servicegroups/grid')->setParams($requestUrl->getParams()); + } elseif ($viewMode !== 'minimal' && $requestUrl->getPath() === 'icingadb/servicegroups/grid') { + $requestUrl = Url::fromPath('icingadb/servicegroups')->setParams($requestUrl->getParams()); + } + $preferredModes[$requestUrl->getPath()] = $viewMode; $user->setAdditional('icingadb.view_modes', $preferredModes);