3 * Smarty Resource Plugin
6 * @subpackage TemplateResources
11 * Smarty Resource Plugin
12 * Base implementation for resource plugins that don't use the compiler
15 * @subpackage TemplateResources
17 abstract class Smarty_Resource_Uncompiled
extends Smarty_Resource
20 * Flag that it's an uncompiled resource
24 public $uncompiled = true;
27 * Render and output the template (without using the compiler)
29 * @param Smarty_Template_Source $source source object
30 * @param Smarty_Internal_Template $_template template object
32 * @throws SmartyException on failure
34 abstract public function renderUncompiled(Smarty_Template_Source
$source, Smarty_Internal_Template
$_template);
37 * populate compiled object with compiled filepath
39 * @param Smarty_Template_Compiled $compiled compiled object
40 * @param Smarty_Internal_Template $_template template object (is ignored)
42 public function populateCompiledFilepath(Smarty_Template_Compiled
$compiled, Smarty_Internal_Template
$_template)
44 $compiled->filepath
= false;
45 $compiled->timestamp
= false;
46 $compiled->exists
= false;
50 * render compiled template code
52 * @param Smarty_Internal_Template $_template
57 public function render($_template)
59 $level = ob_get_level();
62 $this->renderUncompiled($_template->source
, $_template);
63 return ob_get_clean();
65 catch (Exception
$e) {
66 while (ob_get_level() > $level) {