/** * Cache was invalid , so render from compiled and write to cache * * @param \Smarty_Template_Cached $cached * @param \Smarty_Internal_Template $_template * @param $no_output_filter * * @throws \Exception */ public function updateCache(Smarty_Template_Cached $cached, Smarty_Internal_Template $_template, $no_output_filter) { ob_start(); if (!isset($_template->compiled)) { $_template->loadCompiled(); } $_template->compiled->render($_template); if ($_template->smarty->debugging) { $_template->smarty->_debug->start_cache($_template); } $this->removeNoCacheHash($cached, $_template, $no_output_filter); $compile_check = $_template->smarty->compile_check; $_template->smarty->compile_check = false; if (isset($_template->parent) && $_template->parent->_objType == 2) { $_template->compiled->unifunc = $_template->parent->compiled->unifunc; } if (!$_template->cached->processed) { $_template->cached->process($_template, true); } $_template->smarty->compile_check = $compile_check; $cached->getRenderedTemplateCode($_template); if ($_template->smarty->debugging) { $_template->smarty->_debug->end_cache($_template); } }