public function loadFromCache(Template $template) { // $this->Logger->error(print_r($template->getDeferredContents(), true)); // $this->Logger->error(print_r($template->getDeferredParams(), true)); if ($this->benchmarkRendering) { $this->Benchmark->start('load-template-from-cache-' . $template->getName()); } $newParsedContent = $template->getProcessedContent(); // TODO: THIS IS A PROBLEM! foreach ((array) $template->getDeferredContents() as $num => $conts) { // $this->Logger->error($num.': '.$conts); // $newcount = $this->deferredCount++; $newParsedContent = str_replace('{% defer ' . $num . ' %}', $conts, $newParsedContent); // if (!isset($this->deferredContents[$num])) // $this->deferredContents[$num] = $conts; // $this->deferredContents[$num.'.'.$newcount] = $conts; } // foreach ((array)$template->getDeferredParams() as $name => $val) { // $newcount = $this->deferredOrDependentParamCount++; // $newParsedContent = str_replace('Data:'.$name,'Data:'.$name.'_'.$newcount, $newParsedContent); // if (!isset($this->deferredOrDependentParams[$name])) // $this->deferredOrDependentParams[$name] = $val; // $this->deferredOrDependentParams[$name.'_'.$newcount] = $val; // } $template->setProcessedContent($newParsedContent); if ($this->benchmarkRendering) { $this->Benchmark->end('load-template-from-cache-' . $template->getName()); } return $template; }