diff --git a/gosa-core/include/smarty/sysplugins/smarty_internal_resource_stream.php b/gosa-core/include/smarty/sysplugins/smarty_internal_resource_stream.php
index 85698c23287b911d8fe36350f84ef49e8a1de14b..1878002bf50a03fa7c81b2b2d6a1fb6b60ab2674 100644 (file)
<?php
+
/**
- * Smarty Internal Plugin Resource Stream
- *
- * Implements the streams as resource for Smarty template
- *
- * @package Smarty
- * @subpackage TemplateResources
- * @author Uwe Tews
- * @author Rodney Rehm
- */
+* Smarty Internal Plugin Resource Stream
+*
+* Implements the streams as resource for Smarty template
+*
+* @package Smarty
+* @subpackage TemplateResources
+* @author Uwe Tews
+*/
/**
- * Smarty Internal Plugin Resource Stream
- *
- * Implements the streams as resource for Smarty template
- *
- * @link http://php.net/streams
- * @package Smarty
- * @subpackage TemplateResources
- */
-class Smarty_Internal_Resource_Stream extends Smarty_Resource_Recompiled {
+* Smarty Internal Plugin Resource Stream
+*/
+class Smarty_Internal_Resource_Stream {
+ public function __construct($smarty)
+ {
+ $this->smarty = $smarty;
+ }
+ // classes used for compiling Smarty templates from file resource
+ public $compiler_class = 'Smarty_Internal_SmartyTemplateCompiler';
+ public $template_lexer_class = 'Smarty_Internal_Templatelexer';
+ public $template_parser_class = 'Smarty_Internal_Templateparser';
+ // properties
+ public $usesCompiler = true;
+ public $isEvaluated = true;
+
+ /**
+ * Return flag if template source is existing
+ *
+ * @return boolean true
+ */
+ public function isExisting($template)
+ {
+ if ($template->getTemplateSource() == '') {
+ return false;
+ } else {
+ return true;
+ }
+ }
+ /**
+ * Get filepath to template source
+ *
+ * @param object $_template template object
+ * @return string return 'string' as template source is not a file
+ */
+ public function getTemplateFilepath($_template)
+ {
+ // no filepath for strings
+ // return resource name for compiler error messages
+ return str_replace(':', '://', $_template->template_resource);
+ }
/**
- * populate Source Object with meta data from Resource
- *
- * @param Smarty_Template_Source $source source object
- * @param Smarty_Internal_Template $_template template object
- * @return void
- */
- public function populate(Smarty_Template_Source $source, Smarty_Internal_Template $_template=null)
+ * Get timestamp to template source
+ *
+ * @param object $_template template object
+ * @return boolean false as string resources have no timestamp
+ */
+ public function getTemplateTimestamp($_template)
{
- $source->filepath = str_replace(':', '://', $source->resource);
- $source->uid = false;
- $source->content = $this->getContent($source);
- $source->timestamp = false;
- $source->exists = !!$source->content;
+ // strings must always be compiled and have no timestamp
+ return false;
}
/**
- * Load template's source from stream into current template object
- *
- * @param Smarty_Template_Source $source source object
- * @return string template source
- * @throws SmartyException if source cannot be loaded
- */
- public function getContent(Smarty_Template_Source $source)
+ * Retuen template source from resource name
+ *
+ * @param object $_template template object
+ * @return string content of template source
+ */
+ public function getTemplateSource($_template)
{
- $t = '';
- // the availability of the stream has already been checked in Smarty_Resource::fetch()
- $fp = fopen($source->filepath, 'r+');
- if ($fp) {
- while (!feof($fp) && ($current_line = fgets($fp)) !== false) {
- $t .= $current_line;
+ // return template string
+ $_template->template_source = '';
+ if ($fp = fopen(str_replace(':', '://', $_template->template_resource),'r+')) {
+ while (!feof($fp) && ($current_line = fgets($fp)) !== false ) {
+ $_template->template_source .= $current_line;
}
fclose($fp);
- return $t;
+ return true;
} else {
return false;
}
}
-
+
/**
- * modify resource_name according to resource handlers specifications
- *
- * @param Smarty $smarty Smarty instance
- * @param string $resource_name resource_name to make unique
- * @return string unique resource name
- */
- protected function buildUniqueResourceName(Smarty $smarty, $resource_name)
+ * Get filepath to compiled template
+ *
+ * @param object $_template template object
+ * @return boolean return false as compiled template is not stored
+ */
+ public function getCompiledFilepath($_template)
{
- return get_class($this) . '#' . $resource_name;
+ // no filepath for strings
+ return false;
}
}