diff --git a/integrations/nextcloud/snappymail/lib/Controller/PageController.php b/integrations/nextcloud/snappymail/lib/Controller/PageController.php index ebae0d318..17295860b 100644 --- a/integrations/nextcloud/snappymail/lib/Controller/PageController.php +++ b/integrations/nextcloud/snappymail/lib/Controller/PageController.php @@ -16,6 +16,8 @@ class PageController extends Controller */ public function index() { + $nav = SnappyMailHelper::getNavigationManager(); + $bAdmin = false; if (!empty($_SERVER['QUERY_STRING'])) { SnappyMailHelper::loadApp(); @@ -26,7 +28,7 @@ class PageController extends Controller } if (!$bAdmin && SnappyMailHelper::getAppConfigValue('snappymail-no-embed')) { - \OC::$server->getNavigationManager()->setActiveEntry('snappymail'); + $nav->setActiveEntry('snappymail'); \OCP\Util::addScript('snappymail', 'snappymail'); \OCP\Util::addStyle('snappymail', 'style'); SnappyMailHelper::startApp(); @@ -41,7 +43,7 @@ class PageController extends Controller return $response; } - \OC::$server->getNavigationManager()->setActiveEntry('snappymail'); + $nav->setActiveEntry('snappymail'); \OCP\Util::addStyle('snappymail', 'embed'); diff --git a/integrations/nextcloud/snappymail/lib/Util/SnappyMailHelper.php b/integrations/nextcloud/snappymail/lib/Util/SnappyMailHelper.php index 54c8e3639..bf3339016 100644 --- a/integrations/nextcloud/snappymail/lib/Util/SnappyMailHelper.php +++ b/integrations/nextcloud/snappymail/lib/Util/SnappyMailHelper.php @@ -42,6 +42,14 @@ class SnappyMailHelper )->getAppValue('snappymail', $key, $default); } + public static function getNavigationManager(): object + { + return \method_exists(\OC::$server, 'getNavigationManager') + ? \OC::$server->getNavigationManager() + // Nextcloud 32+ + : \OCP\Server::get(\OCP\INavigationManager::class); + } + public static function getSystemConfigValue(string $key, mixed $default = null): mixed { return \method_exists(\OC::$server, 'getSystemConfig')