Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php/*** Smarty Template Resource Base Object** @package Smarty* @subpackage TemplateResources* @author Rodney Rehm*/abstract class Smarty_Template_Resource_Base{/*** Compiled Filepath** @var string*/public $filepath = null;/*** Compiled Timestamp** @var integer|bool*/public $timestamp = false;/*** Compiled Existence** @var boolean*/public $exists = false;/*** Template Compile Id (Smarty_Internal_Template::$compile_id)** @var string*/public $compile_id = null;/*** Compiled Content Loaded** @var boolean*/public $processed = false;/*** unique function name for compiled template code** @var string*/public $unifunc = '';/*** flag if template does contain nocache code sections** @var bool*/public $has_nocache_code = false;/*** resource file dependency** @var array*/public $file_dependency = array();/*** Content buffer** @var string*/public $content = null;/*** Included sub templates* - index name* - value use count** @var int[]*/public $includes = array();/*** Flag if this is a cache resource** @var bool*/public $isCache = false;/*** Process resource** @param Smarty_Internal_Template $_template template object*/abstract public function process(Smarty_Internal_Template $_template);/*** get rendered template content by calling compiled or cached template code** @param \Smarty_Internal_Template $_template* @param string $unifunc function with template code** @throws \Exception*/public function getRenderedTemplateCode(Smarty_Internal_Template $_template, $unifunc = null){$smarty = &$_template->smarty;$_template->isRenderingCache = $this->isCache;$level = ob_get_level();try {if (!isset($unifunc)) {$unifunc = $this->unifunc;}if (empty($unifunc) || !function_exists($unifunc)) {throw new SmartyException("Invalid compiled template for '{$_template->template_resource}'");}if ($_template->startRenderCallbacks) {foreach ($_template->startRenderCallbacks as $callback) {call_user_func($callback, $_template);}}$unifunc($_template);foreach ($_template->endRenderCallbacks as $callback) {call_user_func($callback, $_template);}$_template->isRenderingCache = false;} catch (Exception $e) {$_template->isRenderingCache = false;while (ob_get_level() > $level) {ob_end_clean();}if (isset($smarty->security_policy)) {$smarty->security_policy->endTemplate();}throw $e;}}/*** Get compiled time stamp** @return int*/public function getTimeStamp(){if ($this->exists && !$this->timestamp) {$this->timestamp = filemtime($this->filepath);}return $this->timestamp;}}