aboutsummaryrefslogtreecommitdiffstats
path: root/library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php
diff options
context:
space:
mode:
authorWave <wave72@users.noreply.github.com>2015-12-20 10:20:36 +0100
committerWave <wave72@users.noreply.github.com>2015-12-20 10:20:36 +0100
commit2aad4c2cf9c17a7532089aadfcc5feff6505ec74 (patch)
tree2082c8dc7ba090f610874b6e33b0f1092a2ff00c /library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php
parent474a1267d73c1dcf00678dd15ed4e0e37496473d (diff)
parente2692a4baaf031bd0d9c0893c3762637b1f6b201 (diff)
downloadvolse-hubzilla-2aad4c2cf9c17a7532089aadfcc5feff6505ec74.tar.gz
volse-hubzilla-2aad4c2cf9c17a7532089aadfcc5feff6505ec74.tar.bz2
volse-hubzilla-2aad4c2cf9c17a7532089aadfcc5feff6505ec74.zip
Merge pull request #4 from redmatrix/master
Merge master into dev branch
Diffstat (limited to 'library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php')
-rw-r--r--library/Smarty/libs/sysplugins/smarty_resource_uncompiled.php38
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;
+ }
+ }
}