/** * @see WCF::initTPL() */ protected function initTPL() { // init style to get template pack id $this->initStyle(); global $packageDirs; require_once WCF_DIR . 'lib/system/template/StructuredTemplate.class.php'; self::$tplObj = new StructuredTemplate(self::getStyle()->templatePackID, self::getLanguage()->getLanguageID(), ArrayUtil::appendSuffix($packageDirs, 'templates/')); $this->assignDefaultTemplateVariables(); // init cronjobs $this->initCronjobs(); // check offline mode if (OFFLINE && !self::getUser()->getPermission('user.board.canViewBoardOffline')) { $showOfflineError = true; foreach (self::$availablePagesDuringOfflineMode as $type => $names) { if (isset($_REQUEST[$type])) { foreach ($names as $name) { if ($_REQUEST[$type] == $name) { $showOfflineError = false; break 2; } } break; } } if ($showOfflineError) { self::getTPL()->display('offline'); exit; } } // user ban if (self::getUser()->banned && (!isset($_REQUEST['page']) || $_REQUEST['page'] != 'LegalNotice')) { throw new NamedUserException(WCF::getLanguage()->getDynamicVariable('wcf.user.banned')); } }