app->accountManager->get($request->header->account), $this->app->dbPool, $this->app->unitId, $this->app->appId ); $navView = new NavigationView($this->app->l11nManager, $request, $response); $navView->setTemplate('/Modules/Navigation/Theme/Backend/mid'); $navView->setNav($nav->getNav()); $navView->parent = $pageId; return $navView; } /** * Get basic navigation view * * @param RequestAbstract $request Request * @param ResponseAbstract $response Response * * @return NavigationView * * @since 1.0.0 * @codeCoverageIgnore */ public function getView(RequestAbstract $request, ResponseAbstract $response) : NavigationView { $navObj = Navigation::getInstance( $request, $this->app->accountManager->get($request->header->account), $this->app->dbPool, $this->app->unitId, $this->app->appId ); $nav = new \Modules\Navigation\Views\NavigationView($this->app->l11nManager, $request, $response); $nav->setNav($navObj->getNav()); $unread = []; foreach ($this->receiving as $receiving) { $unread[$receiving] = $this->app->moduleManager->get($receiving)->openNav($request->header->account); } $nav->setData('unread', $unread); return $nav; } /** * Load navigation language * * @param RequestAbstract $request Request * @param ResponseAbstract $response Response * * @return void * * @since 1.0.0 * @codeCoverageIgnore */ public function loadLanguage(RequestAbstract $request, ResponseAbstract $response) : void { $languages = $this->app->moduleManager->getLanguageFiles($request); $langCode = $response->header->l11n->language; foreach ($languages as $path) { $path = __DIR__ . '/../../..' . $path . '.' . $langCode . '.lang.php'; if (!\is_file($path)) { continue; } /** @noinspection PhpIncludeInspection */ $lang = include $path; $this->app->l11nManager->loadLanguage($langCode, 'Navigation', $lang); } } /** * @param int $pageId Page/parent Id for navigation * @param RequestAbstract $request Request * @param ResponseAbstract $response Response * * @return NavigationView * * @since 1.0.0 * @codeCoverageIgnore */ public function createNavigationSplash(int $pageId, RequestAbstract $request, ResponseAbstract $response) : NavigationView { $nav = Navigation::getInstance($request, $this->app->accountManager->get($request->header->account), $this->app->dbPool, $this->app->unitId, $this->app->appId ); $navView = new NavigationView($this->app->l11nManager, $request, $response); $navView->setTemplate('/Modules/Navigation/Theme/Timerecording/splash'); $navView->setNav($nav->getNav()); $navView->parent = $pageId; return $navView; } }