aboutsummaryrefslogtreecommitdiffstats
path: root/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
diff options
context:
space:
mode:
Diffstat (limited to 'library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php')
-rw-r--r--library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php39
1 files changed, 20 insertions, 19 deletions
diff --git a/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php b/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
index 16974ef29..0c0802d62 100644
--- a/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
+++ b/library/Smarty/libs/sysplugins/smarty_internal_resource_extends.php
@@ -34,30 +34,29 @@ class Smarty_Internal_Resource_Extends extends Smarty_Resource
*/
public function populate(Smarty_Template_Source $source, Smarty_Internal_Template $_template = null)
{
- $uid = sha1(getcwd());
+ $uid = '';
$sources = array();
$components = explode('|', $source->name);
$exists = true;
foreach ($components as $component) {
- $s = Smarty_Resource::source(null, $source->smarty, $component);
- if ($s->type == 'php') {
- throw new SmartyException("Resource type {$s->type} cannot be used with the extends resource type");
+ /* @var \Smarty_Template_Source $_s */
+ $_s = Smarty_Template_Source::load(null, $source->smarty, $component);
+ if ($_s->type == 'php') {
+ throw new SmartyException("Resource type {$_s->type} cannot be used with the extends resource type");
}
- $sources[$s->uid] = $s;
- $uid .= realpath($s->filepath);
- if ($_template && $_template->smarty->compile_check) {
- $exists = $exists && $s->exists;
+ $sources[$_s->uid] = $_s;
+ $uid .= $_s->filepath;
+ if ($_template) {
+ $exists = $exists && $_s->exists;
}
}
$source->components = $sources;
- $source->filepath = $s->filepath;
+ $source->filepath = $_s->filepath;
$source->uid = sha1($uid);
- if ($_template && $_template->smarty->compile_check) {
- $source->timestamp = $s->timestamp;
- $source->exists = $exists;
+ $source->exists = $exists;
+ if ($_template) {
+ $source->timestamp = $_s->timestamp;
}
- // need the template at getContent()
- $source->template = $_template;
}
/**
@@ -68,10 +67,11 @@ class Smarty_Internal_Resource_Extends extends Smarty_Resource
public function populateTimestamp(Smarty_Template_Source $source)
{
$source->exists = true;
- foreach ($source->components as $s) {
- $source->exists = $source->exists && $s->exists;
+ /* @var \Smarty_Template_Source $_s */
+ foreach ($source->components as $_s) {
+ $source->exists = $source->exists && $_s->exists;
}
- $source->timestamp = $s->timestamp;
+ $source->timestamp = $source->exists ? $_s->getTimeStamp() : false;
}
/**
@@ -91,9 +91,10 @@ class Smarty_Internal_Resource_Extends extends Smarty_Resource
$_components = array_reverse($source->components);
$_content = '';
- foreach ($_components as $_component) {
+ /* @var \Smarty_Template_Source $_s */
+ foreach ($_components as $_s) {
// read content
- $_content .= $_component->content;
+ $_content .= $_s->getContent();
}
return $_content;
}