%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/modules/ui/view/bootstrap/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/modules/ui/view/bootstrap/ThemeLoader.php |
<?php /** * @link https://www.humhub.org/ * @copyright Copyright (c) 2018 HumHub GmbH & Co. KG * @license https://www.humhub.com/licences */ namespace humhub\modules\ui\view\bootstrap; use humhub\components\console\Application as ConsoleApplication; use humhub\libs\BaseSettingsManager; use humhub\modules\installer\libs\EnvironmentChecker; use humhub\modules\ui\view\components\Theme; use humhub\modules\ui\view\helpers\ThemeHelper; use Yii; use yii\base\BootstrapInterface; /** * ThemeLoader is used during the application bootstrap process * to load the actual theme specifed in the SettingsManager. * * @since 1.3 * @package humhub\modules\ui\view\bootstrap */ class ThemeLoader implements BootstrapInterface { /** * @inheritdoc */ public function bootstrap($app) { // Skip dynamic theme loading during the installation if (Yii::getAlias('@web', false) === false) { return; } if (BaseSettingsManager::isDatabaseInstalled()) { $themePath = $app->settings->get('theme'); if (!empty($themePath) && is_dir($themePath)) { $theme = ThemeHelper::getThemeByPath($themePath); if ($theme !== null) { $app->view->theme = $theme; $app->mailer->view->theme = $theme; } } } else { EnvironmentChecker::preInstallChecks(); } if ($app->view->theme instanceof Theme) { if (!Yii::$app->request->isConsoleRequest && !(Yii::$app instanceof ConsoleApplication)) { // Register the theme (e.g. add core js/css header) $app->view->theme->register(); } } } }