X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FRenderer.php;h=608c707434ca539c295b68425c943c99c757da88;hb=19d62621d535802a9172749b55cbbe4eab0342f4;hp=75a869a38be2f4dd8a12fc89e3dc77c215a758df;hpb=befc2af5043a3afde251721c0d27df695db1bb7e;p=friendica.git diff --git a/src/Core/Renderer.php b/src/Core/Renderer.php index 75a869a38b..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; /** @@ -48,7 +48,6 @@ class Renderer * beyond are used. */ public static $theme = [ - 'sourcename' => '', 'videowidth' => 425, 'videoheight' => 350, 'stylesheet' => '', @@ -70,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); @@ -85,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; } @@ -103,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; } @@ -129,7 +128,7 @@ class Renderer * Register template engine class * * @param string $class - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function registerTemplateEngine($class) { @@ -141,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); } } @@ -155,7 +154,7 @@ class Renderer * or default * * @return TemplateEngine Template Engine instance - * @throws InternalServerErrorException + * @throws ServiceUnavailableException */ public static function getTemplateEngine() { @@ -167,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; } @@ -175,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); } /**