]> git.mxchange.org Git - friendica.git/blobdiff - src/App.php
Merge pull request #11647 from Quix0r/fixes/type-error-exception
[friendica.git] / src / App.php
index d6532c445cc2ecafb6849d0095a5e1a67b1ce7cb..6fa79c50144190638e8de86c1a1542dc5be8c0bb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2010-2021, the Friendica project
+ * @copyright Copyright (C) 2010-2022, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -472,7 +472,7 @@ class App
                        // Allow folks to override user themes and always use their own on their own site.
                        // This works only if the user is on the same server
                        $user = $this->database->selectFirst('user', ['theme'], ['uid' => $this->profile_owner]);
-                       if ($this->database->isResult($user) && !$this->pConfig->get(local_user(), 'system', 'always_my_theme')) {
+                       if ($this->database->isResult($user) && !local_user()) {
                                $page_theme = $user['theme'];
                        }
                }
@@ -504,7 +504,7 @@ class App
                if (!empty($this->profile_owner) && ($this->profile_owner != local_user())) {
                        // Allow folks to override user themes and always use their own on their own site.
                        // This works only if the user is on the same server
-                       if (!$this->pConfig->get(local_user(), 'system', 'always_my_theme')) {
+                       if (!local_user()) {
                                $page_mobile_theme = $this->pConfig->get($this->profile_owner, 'system', 'mobile-theme');
                        }
                }
@@ -576,11 +576,12 @@ class App
                $this->profiler->set(microtime(true), 'classinit');
 
                $moduleName = $this->args->getModuleName();
+               $page->setLogging($this->args->getCommand(), $this->args->getMethod());
 
                try {
                        // Missing DB connection: ERROR
                        if ($this->mode->has(App\Mode::LOCALCONFIGPRESENT) && !$this->mode->has(App\Mode::DBAVAILABLE)) {
-                               throw new HTTPException\InternalServerErrorException('Apologies but the website is unavailable at the moment.');
+                               throw new HTTPException\InternalServerErrorException($this->l10n->t('Apologies but the website is unavailable at the moment.'));
                        }
 
                        if (!$this->mode->isInstall()) {
@@ -707,7 +708,9 @@ class App
                        $input     = array_merge($httpinput['variables'], $httpinput['files'], $request ?? $_REQUEST);
 
                        // Let the module run it's internal process (init, get, post, ...)
+                       $timestamp = microtime(true);
                        $response = $module->run($input);
+                       $this->profiler->set(microtime(true) - $timestamp, 'content');
                        if ($response->getHeaderLine(ICanCreateResponses::X_HEADER) === ICanCreateResponses::TYPE_HTML) {
                                $page->run($this, $this->baseURL, $this->args, $this->mode, $response, $this->l10n, $this->profiler, $this->config, $pconfig);
                        } else {
@@ -716,6 +719,7 @@ class App
                } catch (HTTPException $e) {
                        (new ModuleHTTPException())->rawContent($e);
                }
+               $page->logRuntime($this->config, 'runFrontend');
        }
 
        /**