r7434 fix

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@7438 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ngleader 2010-05-11 10:20:27 +00:00
parent 96c71e8c9e
commit fe09e55c51
12 changed files with 187 additions and 44 deletions

View file

@ -55,14 +55,25 @@
$this->tpl_path = preg_replace('/^\.\//','',$tpl_path);
$this->tpl_file = $tpl_file;
// get cached compiled file name
$compiled_tpl_file = FileHandler::getRealPath($this->_getCompiledFileName($tpl_file));
$CacheHandler = &CacheHandler::getInstance('template');
if($CacheHandler->isSupport()){
$buff = $CacheHandler->get('template:'.$tpl_file, filemtime(FileHandler::getRealPath($tpl_file)));
if(!$buff){
$buff = $this->_compileTplFile($tpl_file);
$CacheHandler->put('template:'.$tpl_file, $buff);
}
// compile
$buff = $this->_compile($tpl_file, $compiled_tpl_file);
$output = $this->_fetch('', $buff, $tpl_path);
}else{
// get cached compiled file name
$compiled_tpl_file = FileHandler::getRealPath($this->_getCompiledFileName($tpl_file));
// make a result, combining Context and compiled_tpl_file
$output = $this->_fetch($compiled_tpl_file, $buff, $tpl_path);
// compile
$buff = $this->_compile($tpl_file, $compiled_tpl_file);
// make a result, combining Context and compiled_tpl_file
$output = $this->_fetch($compiled_tpl_file, $buff, $tpl_path);
}
if(__DEBUG__==3 ) $GLOBALS['__template_elapsed__'] += getMicroTime() - $start;
@ -320,7 +331,7 @@
$output = sprintf(
'<?php%s'.
'$oTemplate = &TemplateHandler::getInstance();%s'.
'print $oTemplate->compile(\'%s\',\'%s\');%s'.
'echo $oTemplate->compile(\'%s\',\'%s\');%s'.
'?>%s',
"\n",
@ -519,5 +530,6 @@
return ob_get_clean();
}
}
?>