$_template->parent->required_plugins
[$code][$name][$type] =
$data;
} } } } if ($this->smarty->debugging
) { Smarty_Internal_Debug::
end_render($_template);
} // write to cache when nessecary
if (!
$_template->source->recompiled
&& ($_template->caching == Smarty::CACHING_LIFETIME_SAVED ||
$_template->caching == Smarty::CACHING_LIFETIME_CURRENT
)) { if ($this->smarty->debugging
) { Smarty_Internal_Debug::
start_cache($_template);
} $_template->properties
['has_nocache_code'
] = false;
// get text between non-cached items
$cache_split =
preg_split("!/\*%%SmartyNocache:{
$_template->properties
['nocache_hash'
]}%%\*\/(.+?)/\*/%%SmartyNocache:{
$_template->properties
['nocache_hash'
]}%%\*/!s",
$_output);
// get non-cached items
preg_match_all("!/\*%%SmartyNocache:{
$_template->properties
['nocache_hash'
]}%%\*\/(.+?)/\*/%%SmartyNocache:{
$_template->properties
['nocache_hash'
]}%%\*/!s",
$_output,
$cache_parts);
$output = '';
// loop over items, stitch back together
foreach ($cache_split as $curr_idx =>
$curr_split) { // escape PHP tags in template content
$output .=
preg_replace('/(<%|%>|<\?php|<\?|\?>)/', '<?php echo \'$1\'; ?>',
$curr_split);