Browse Source

Create Core\Renderer Class

create new class and redirect old functions
tags/2019.01
Adam Magness 2 years ago
parent
commit
f6c86649c2
2 changed files with 86 additions and 43 deletions
  1. +15
    -43
      include/text.php
  2. +71
    -0
      src/Core/Renderer.php

+ 15
- 43
include/text.php View File

@@ -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) {

$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 "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
killme();
}

$a->saveTimestamp($stamp1, "rendering");
function replace_macros($s, $r)
{
return Renderer::replaceMacros($s, $r);
}

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 "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
killme();
}

$a->saveTimestamp($stamp1, "file");

return $template;
}

/**
* for html,xml parsing - let's say you've got
* an attribute foobar="class1 class2 class3"


+ 71
- 0
src/Core/Renderer.php View File

@@ -0,0 +1,71 @@
<?php
/**
* @file src/Core/Renderer.php
*/

namespace Friendica\Core;

use Friendica\BaseObject;
use Friendica\Core\System;
use Friendica\Render\FriendicaSmarty;

/**
* @brief This class handles Renderer related functions.
*/
class Renderer extends BaseObject
{
/**
* @brief This is our template processor
*
* @param string|FriendicaSmarty $s The string requiring macro substitution or an instance of FriendicaSmarty
* @param array $r key value pairs (search => 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 "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
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 "<pre><b>" . __FUNCTION__ . "</b>: " . $e->getMessage() . "</pre>";
killme();
}

$a->saveTimestamp($stamp1, "file");

return $template;
}
}

Loading…
Cancel
Save