diff --git a/library/smarty/demo/plugins/resource.extendsall.php b/library/smarty/demo/plugins/resource.extendsall.php new file mode 100644 --- /dev/null +++ b/library/smarty/demo/plugins/resource.extendsall.php @@ -0,0 +1,57 @@ +smarty->getTemplateDir() as $key => $directory) { + try { + $s = Smarty_Resource::source(null, $source->smarty, '[' . $key . ']' . $source->name); + if (!$s->exists) { + continue; + } + $sources[$s->uid] = $s; + $uid .= $s->filepath; + } catch (SmartyException $e) { + } + } + + if (!$sources) { + $source->exists = false; + $source->template = $_template; + + return; + } + + $sources = array_reverse($sources, true); + reset($sources); + $s = current($sources); + + $source->components = $sources; + $source->filepath = $s->filepath; + $source->uid = sha1($uid); + $source->exists = $exists; + if ($_template && $_template->smarty->compile_check) { + $source->timestamp = $s->timestamp; + } + // need the template at getContent() + $source->template = $_template; + } +}