diff options
author | Zach Prezkuta <fermion@gmx.com> | 2013-01-06 14:42:51 -0700 |
---|---|---|
committer | Zach Prezkuta <fermion@gmx.com> | 2013-01-06 15:57:11 -0700 |
commit | a0d19ffb7241a1c7a4b85e6d0fd58fbb2f718468 (patch) | |
tree | 280d792355cb2e60cf62e8451b6d8afbbfcc7c0d /include/text.php | |
parent | 61b8ea9e1af74e2056e18b02c170a899de9abd1b (diff) | |
download | volse-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.php | 33 |
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; }} |