From 51609351f2c4b5082b7e6f0744cd3811c325303f Mon Sep 17 00:00:00 2001 From: emkael Date: Tue, 11 Oct 2016 14:01:29 +0200 Subject: * initial template --- .../sysplugins/smarty_internal_resource_stream.php | 76 ++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 lib/smarty/sysplugins/smarty_internal_resource_stream.php (limited to 'lib/smarty/sysplugins/smarty_internal_resource_stream.php') diff --git a/lib/smarty/sysplugins/smarty_internal_resource_stream.php b/lib/smarty/sysplugins/smarty_internal_resource_stream.php new file mode 100644 index 0000000..85698c2 --- /dev/null +++ b/lib/smarty/sysplugins/smarty_internal_resource_stream.php @@ -0,0 +1,76 @@ +filepath = str_replace(':', '://', $source->resource); + $source->uid = false; + $source->content = $this->getContent($source); + $source->timestamp = false; + $source->exists = !!$source->content; + } + + /** + * 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) + { + $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; + } + fclose($fp); + return $t; + } 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) + { + return get_class($this) . '#' . $resource_name; + } +} + +?> \ No newline at end of file -- cgit v1.2.3