diff --git a/include/text.php b/include/text.php index aa4b2c8dba..0c2ea61de9 100644 --- a/include/text.php +++ b/include/text.php @@ -24,6 +24,7 @@ use Friendica\Util\Map; use Friendica\Util\Proxy as ProxyUtils; use Friendica\Core\Logger; +use Friendica\Core\Renderer; use Friendica\Model\FileTag; require_once "include/conversation.php"; @@ -36,26 +37,21 @@ require_once "include/conversation.php"; * @param array $r key value pairs (search => replace) * @return string substituted string */ -function replace_macros($s, $r) { +function replace_macros($s, $r) +{ + return Renderer::replaceMacros($s, $r); +} - $stamp1 = microtime(true); - - $a = get_app(); - - // pass $baseurl to all templates - $r['$baseurl'] = System::baseUrl(); - - $t = $a->getTemplateEngine(); - try { - $output = $t->replaceMacros($s, $r); - } catch (Exception $e) { - echo "
" . __FUNCTION__ . ": " . $e->getMessage() . "
"; - killme(); - } - - $a->saveTimestamp($stamp1, "rendering"); - - return $output; +/** + * load template $s + * + * @param string $s + * @param string $root + * @return string + */ +function get_markup_template($s, $root = '') +{ + return Renderer::getMarkupTemplate($s, $root); } /** @@ -339,30 +335,6 @@ function perms2str($p) { return $ret; } -/** - * load template $s - * - * @param string $s - * @param string $root - * @return string - */ -function get_markup_template($s, $root = '') { - $stamp1 = microtime(true); - - $a = get_app(); - $t = $a->getTemplateEngine(); - try { - $template = $t->getTemplateFile($s, $root); - } catch (Exception $e) { - echo "
" . __FUNCTION__ . ": " . $e->getMessage() . "
"; - killme(); - } - - $a->saveTimestamp($stamp1, "file"); - - return $template; -} - /** * for html,xml parsing - let's say you've got * an attribute foobar="class1 class2 class3" diff --git a/src/Core/Renderer.php b/src/Core/Renderer.php new file mode 100644 index 0000000000..2c0cb55173 --- /dev/null +++ b/src/Core/Renderer.php @@ -0,0 +1,71 @@ + replace) + * + * @return string substituted string + */ + public static function replaceMacros($s, $r) + { + $stamp1 = microtime(true); + $a = self::getApp(); + + // pass $baseurl to all templates + $r['$baseurl'] = System::baseUrl(); + $t = $a->getTemplateEngine(); + + try { + $output = $t->replaceMacros($s, $r); + } catch (Exception $e) { + echo "
" . __FUNCTION__ . ": " . $e->getMessage() . "
"; + killme(); + } + + $a->saveTimestamp($stamp1, "rendering"); + + return $output; + } + + /** + * @brief Load a given template $s + * + * @param string $s Template to load. + * @param string $root Optional. + * + * @return string template. + */ + public static function getMarkupTemplate($s, $root = '') + { + $stamp1 = microtime(true); + $a = self::getApp(); + $t = $a->getTemplateEngine(); + + try { + $template = $t->getTemplateFile($s, $root); + } catch (Exception $e) { + echo "
" . __FUNCTION__ . ": " . $e->getMessage() . "
"; + killme(); + } + + $a->saveTimestamp($stamp1, "file"); + + return $template; + } +}