X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FRenderer.php;h=608c707434ca539c295b68425c943c99c757da88;hb=06284e60073f374c1bd411e0bba6474a13c14f10;hp=bb404965ee2d039ca26f5edd064a2ec2f9578a0b;hpb=e34795762d72347746bd506f253495da7d0ab329;p=friendica.git diff --git a/src/Core/Renderer.php b/src/Core/Renderer.php index bb404965ee..608c707434 100644 --- a/src/Core/Renderer.php +++ b/src/Core/Renderer.php @@ -23,7 +23,7 @@ namespace Friendica\Core; use Exception; use Friendica\DI; -use Friendica\Network\HTTPException\InternalServerErrorException; +use Friendica\Network\HTTPException\ServiceUnavailableException; use Friendica\Render\TemplateEngine; /** @@ -69,11 +69,11 @@ class Renderer * @param string $template * @param array $vars * @return string - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function replaceMacros(string $template, array $vars = []) { - $stamp1 = microtime(true); + DI::profiler()->startRecording('rendering'); // pass $baseurl to all templates if it isn't set $vars = array_merge(['$baseurl' => DI::baseUrl()->get(), '$APP' => DI::app()], $vars); @@ -84,13 +84,13 @@ class Renderer $output = $t->replaceMacros($template, $vars); } catch (Exception $e) { DI::logger()->critical($e->getMessage(), ['template' => $template, 'vars' => $vars]); - $message = is_site_admin() ? + $message = DI::app()->isSiteAdmin() ? $e->getMessage() : DI::l10n()->t('Friendica can\'t display this page at the moment, please contact the administrator.'); - throw new InternalServerErrorException($message); + throw new ServiceUnavailableException($message); } - DI::profiler()->saveTimestamp($stamp1, "rendering"); + DI::profiler()->stopRecording(); return $output; } @@ -102,24 +102,24 @@ class Renderer * @param string $subDir Subdirectory (Optional) * * @return string template. - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function getMarkupTemplate($file, $subDir = '') { - $stamp1 = microtime(true); + DI::profiler()->startRecording('file'); $t = self::getTemplateEngine(); try { $template = $t->getTemplateFile($file, $subDir); } catch (Exception $e) { DI::logger()->critical($e->getMessage(), ['file' => $file, 'subDir' => $subDir]); - $message = is_site_admin() ? + $message = DI::app()->isSiteAdmin() ? $e->getMessage() : DI::l10n()->t('Friendica can\'t display this page at the moment, please contact the administrator.'); - throw new InternalServerErrorException($message); + throw new ServiceUnavailableException($message); } - DI::profiler()->saveTimestamp($stamp1, "file"); + DI::profiler()->stopRecording(); return $template; } @@ -128,7 +128,7 @@ class Renderer * Register template engine class * * @param string $class - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function registerTemplateEngine($class) { @@ -140,10 +140,10 @@ class Renderer } else { $admin_message = DI::l10n()->t('template engine cannot be registered without a name.'); DI::logger()->critical($admin_message, ['class' => $class]); - $message = is_site_admin() ? + $message = DI::app()->isSiteAdmin() ? $admin_message : DI::l10n()->t('Friendica can\'t display this page at the moment, please contact the administrator.'); - throw new InternalServerErrorException($message); + throw new ServiceUnavailableException($message); } } @@ -154,7 +154,7 @@ class Renderer * or default * * @return TemplateEngine Template Engine instance - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function getTemplateEngine() { @@ -166,7 +166,7 @@ class Renderer } else { $a = DI::app(); $class = self::$template_engines[$template_engine]; - $obj = new $class($a->getCurrentTheme(), $a->theme_info); + $obj = new $class($a->getCurrentTheme(), $a->getThemeInfo()); self::$template_engine_instance[$template_engine] = $obj; return $obj; } @@ -174,10 +174,10 @@ class Renderer $admin_message = DI::l10n()->t('template engine is not registered!'); DI::logger()->critical($admin_message, ['template_engine' => $template_engine]); - $message = is_site_admin() ? + $message = DI::app()->isSiteAdmin() ? $admin_message : DI::l10n()->t('Friendica can\'t display this page at the moment, please contact the administrator.'); - throw new InternalServerErrorException($message); + throw new ServiceUnavailableException($message); } /**