diff options
author | royalterra <royalterra@users.noreply.github.com> | 2015-12-11 09:39:01 +0000 |
---|---|---|
committer | royalterra <royalterra@users.noreply.github.com> | 2015-12-11 09:39:01 +0000 |
commit | 4ff31d0a4140d923cbb8ddbe18ccf578a367375f (patch) | |
tree | 1f63d4b042c3dbf7bfe2c3e74f0a24ef2e5f94ec /library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php | |
parent | b92cc852d142940f0f8dd78ddf7be835dc8b9e07 (diff) | |
parent | f73c82632f213ac7971b54220b4a0c87d354ca1e (diff) | |
download | volse-hubzilla-4ff31d0a4140d923cbb8ddbe18ccf578a367375f.tar.gz volse-hubzilla-4ff31d0a4140d923cbb8ddbe18ccf578a367375f.tar.bz2 volse-hubzilla-4ff31d0a4140d923cbb8ddbe18ccf578a367375f.zip |
Merge pull request #1 from redmatrix/master
merge branches
Diffstat (limited to 'library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php')
-rw-r--r-- | library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php b/library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php index 4ee5d7908..88d2bba81 100644 --- a/library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php +++ b/library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php @@ -17,6 +17,20 @@ abstract class Smarty_Resource_Uncompiled extends Smarty_Resource { /** + * Flag that it's an uncompiled resource + * + * @var bool + */ + public $uncompiled = true; + + /** + * Resource does implement populateCompiledFilepath() method + * + * @var bool + */ + public $hasCompiledHandler = true; + + /** * Render and output the template (without using the compiler) * * @param Smarty_Template_Source $source source object @@ -38,4 +52,28 @@ abstract class Smarty_Resource_Uncompiled extends Smarty_Resource $compiled->timestamp = false; $compiled->exists = false; } + + /** + * render compiled template code + * + * @param Smarty_Internal_Template $_template + * + * @return string + * @throws Exception + */ + public function render($_template) + { + $level = ob_get_level(); + ob_start(); + try { + $this->renderUncompiled($_template->source, $_template); + return ob_get_clean(); + } + catch (Exception $e) { + while (ob_get_level() > $level) { + ob_end_clean(); + } + throw $e; + } + } } |