From 7085a0c2f7104a56a7e946c43ba0b5736be5f4e7 Mon Sep 17 00:00:00 2001 From: emkael Date: Tue, 27 Dec 2016 14:47:01 +0100 Subject: * smarty bundled --- .../sysplugins/smarty_internal_resource_string.php | 107 +++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 lib/smarty3/sysplugins/smarty_internal_resource_string.php (limited to 'lib/smarty3/sysplugins/smarty_internal_resource_string.php') diff --git a/lib/smarty3/sysplugins/smarty_internal_resource_string.php b/lib/smarty3/sysplugins/smarty_internal_resource_string.php new file mode 100644 index 0000000..f2610d9 --- /dev/null +++ b/lib/smarty3/sysplugins/smarty_internal_resource_string.php @@ -0,0 +1,107 @@ +uid = $source->filepath = sha1($source->name . $source->smarty->_joined_template_dir); + $source->timestamp = $source->exists = true; + } + + /** + * Load template's source from $resource_name into current template object + * + * @uses decode() to decode base64 and urlencoded template_resources + * + * @param Smarty_Template_Source $source source object + * + * @return string template source + */ + public function getContent(Smarty_Template_Source $source) + { + return $this->decode($source->name); + } + + /** + * decode base64 and urlencode + * + * @param string $string template_resource to decode + * + * @return string decoded template_resource + */ + protected function decode($string) + { + // decode if specified + if (($pos = strpos($string, ':')) !== false) { + if (!strncmp($string, 'base64', 6)) { + return base64_decode(substr($string, 7)); + } elseif (!strncmp($string, 'urlencode', 9)) { + return urldecode(substr($string, 10)); + } + } + + return $string; + } + + /** + * modify resource_name according to resource handlers specifications + * + * @param Smarty $smarty Smarty instance + * @param string $resource_name resource_name to make unique + * @param boolean $isConfig flag for config resource + * + * @return string unique resource name + */ + public function buildUniqueResourceName(Smarty $smarty, $resource_name, $isConfig = false) + { + return get_class($this) . '#' . $this->decode($resource_name); + } + + /** + * Determine basename for compiled filename + * Always returns an empty string. + * + * @param Smarty_Template_Source $source source object + * + * @return string resource's basename + */ + public function getBasename(Smarty_Template_Source $source) + { + return ''; + } + + /* + * Disable timestamp checks for string resource. + * + * @return bool + */ + public function checkTimestamps() + { + return false; + } +} + -- cgit v1.2.3