aboutsummaryrefslogtreecommitdiffstats
path: root/include/text.php
diff options
context:
space:
mode:
authorZach Prezkuta <fermion@gmx.com>2013-01-06 14:42:51 -0700
committerZach Prezkuta <fermion@gmx.com>2013-01-06 15:57:11 -0700
commita0d19ffb7241a1c7a4b85e6d0fd58fbb2f718468 (patch)
tree280d792355cb2e60cf62e8451b6d8afbbfcc7c0d /include/text.php
parent61b8ea9e1af74e2056e18b02c170a899de9abd1b (diff)
downloadvolse-hubzilla-a0d19ffb7241a1c7a4b85e6d0fd58fbb2f718468.tar.gz
volse-hubzilla-a0d19ffb7241a1c7a4b85e6d0fd58fbb2f718468.tar.bz2
volse-hubzilla-a0d19ffb7241a1c7a4b85e6d0fd58fbb2f718468.zip
implement Smarty3
Diffstat (limited to 'include/text.php')
-rw-r--r--include/text.php33
1 files changed, 25 insertions, 8 deletions
diff --git a/include/text.php b/include/text.php
index 5438aae73..83d989947 100644
--- a/include/text.php
+++ b/include/text.php
@@ -13,15 +13,32 @@ require_once("include/template_processor.php");
if(! function_exists('replace_macros')) {
function replace_macros($s,$r) {
global $t;
-
- //$ts = microtime();
- $r = $t->replace($s,$r);
- //$tt = microtime() - $ts;
-
- //$a = get_app();
- //$a->page['debug'] .= "$tt <br>\n";
- return template_unescape($r);
+// $ts = microtime();
+ $a = get_app();
+
+ if($a->get_template_engine() === 'smarty3') {
+ $template = '';
+ if(gettype($s) === 'string') {
+ $template = $s;
+ $s = new FriendicaSmarty();
+ }
+ foreach($r as $key=>$value) {
+ if($key[0] === '$') {
+ $key = substr($key, 1);
+ }
+ $s->assign($key, $value);
+ }
+ $output = $s->parsed($template);
+ }
+ else {
+ $r = $t->replace($s,$r);
+
+ $output = template_unescape($r);
+ }
+// $tt = microtime() - $ts;
+// $a->page['debug'] .= "$tt <br>\n";
+ return $output;
}}