diff --git a/gosa-core/include/smarty/sysplugins/smarty_internal_resource_eval.php b/gosa-core/include/smarty/sysplugins/smarty_internal_resource_eval.php
index cf2ec3e1cc5b9264d6dc621d291be97658652a43..c4a75f585aca1bf27ab389e3c7e63b1a7c48401a 100644 (file)
<?php\r
+\r
/**\r
* Smarty Internal Plugin Resource Eval\r
- *\r
+ * \r
+ * Implements the strings as resource for Smarty template\r
+ * \r
* @package Smarty\r
* @subpackage TemplateResources\r
- * @author Uwe Tews\r
- * @author Rodney Rehm\r
+ * @author Uwe Tews \r
*/\r
-\r
+ \r
/**\r
* Smarty Internal Plugin Resource Eval\r
- *\r
- * Implements the strings as resource for Smarty template\r
- *\r
- * {@internal unlike string-resources the compiled state of eval-resources is NOT saved for subsequent access}}\r
- *\r
- * @package Smarty\r
- * @subpackage TemplateResources\r
*/\r
-class Smarty_Internal_Resource_Eval extends Smarty_Resource_Recompiled {\r
+class Smarty_Internal_Resource_Eval {\r
+ public function __construct($smarty)\r
+ {\r
+ $this->smarty = $smarty;\r
+ } \r
+ // classes used for compiling Smarty templates from file resource\r
+ public $compiler_class = 'Smarty_Internal_SmartyTemplateCompiler';\r
+ public $template_lexer_class = 'Smarty_Internal_Templatelexer';\r
+ public $template_parser_class = 'Smarty_Internal_Templateparser';\r
+ // properties\r
+ public $usesCompiler = true;\r
+ public $isEvaluated = true;\r
\r
/**\r
- * populate Source Object with meta data from Resource\r
- *\r
- * @param Smarty_Template_Source $source source object\r
- * @param Smarty_Internal_Template $_template template object\r
- * @return void\r
+ * Return flag if template source is existing\r
+ * \r
+ * @return boolean true\r
*/\r
- public function populate(Smarty_Template_Source $source, Smarty_Internal_Template $_template=null)\r
+ public function isExisting($template)\r
{\r
- $source->uid = $source->filepath = sha1($source->name);\r
- $source->timestamp = false;\r
- $source->exists = true;\r
- }\r
+ return true;\r
+ } \r
\r
/**\r
- * Load template's source from $resource_name into current template object\r
- *\r
- * @uses decode() to decode base64 and urlencoded template_resources\r
- * @param Smarty_Template_Source $source source object\r
- * @return string template source\r
+ * Get filepath to template source\r
+ * \r
+ * @param object $_template template object\r
+ * @return string return 'string' as template source is not a file\r
*/\r
- public function getContent(Smarty_Template_Source $source)\r
- {\r
- return $this->decode($source->name);\r
- }\r
- \r
+ public function getTemplateFilepath($_template)\r
+ { \r
+ // no filepath for evaluated strings\r
+ // return "string" for compiler error messages\r
+ return 'eval:';\r
+ } \r
+\r
/**\r
- * decode base64 and urlencode\r
- *\r
- * @param string $string template_resource to decode\r
- * @return string decoded template_resource\r
+ * Get timestamp to template source\r
+ * \r
+ * @param object $_template template object\r
+ * @return boolean false as string resources have no timestamp\r
*/\r
- protected function decode($string)\r
- {\r
- // decode if specified\r
- if (($pos = strpos($string, ':')) !== false) {\r
- if (!strncmp($string, 'base64', 6)) {\r
- return base64_decode(substr($string, 7));\r
- } elseif (!strncmp($string, 'urlencode', 9)) {\r
- return urldecode(substr($string, 10));\r
- }\r
- }\r
- \r
- return $string;\r
- }\r
- \r
+ public function getTemplateTimestamp($_template)\r
+ { \r
+ // evaluated strings must always be compiled and have no timestamp\r
+ return false;\r
+ } \r
+\r
/**\r
- * modify resource_name according to resource handlers specifications\r
- *\r
- * @param Smarty $smarty Smarty instance\r
- * @param string $resource_name resource_name to make unique\r
- * @return string unique resource name\r
+ * Retuen template source from resource name\r
+ * \r
+ * @param object $_template template object\r
+ * @return string content of template source\r
*/\r
- protected function buildUniqueResourceName(Smarty $smarty, $resource_name)\r
- {\r
- return get_class($this) . '#' .$this->decode($resource_name);\r
- }\r
+ public function getTemplateSource($_template)\r
+ { \r
+ // return template string\r
+ $_template->template_source = $_template->resource_name;\r
+ return true;\r
+ } \r
\r
/**\r
- * Determine basename for compiled filename\r
- *\r
- * @param Smarty_Template_Source $source source object\r
- * @return string resource's basename\r
+ * Get filepath to compiled template\r
+ * \r
+ * @param object $_template template object\r
+ * @return boolean return false as compiled template is not stored\r
*/\r
- protected function getBasename(Smarty_Template_Source $source)\r
- {\r
- return '';\r
- }\r
-\r
-}\r
-\r
+ public function getCompiledFilepath($_template)\r
+ { \r
+ // no filepath for strings\r
+ return false;\r
+ } \r
+} \r
?>
\ No newline at end of file