mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
Remove subfolder storage of templates ... a safe-mode thang, you can delete any existing cache/templates folder
git-svn-id: file:///svn/phpbb/trunk@4273 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
947c81b3db
commit
bf70fee152
3 changed files with 17 additions and 21 deletions
|
@ -37,7 +37,7 @@ class acm
|
|||
function load()
|
||||
{
|
||||
global $phpEx;
|
||||
@include($this->cache_dir . 'global.' . $phpEx);
|
||||
@include($this->cache_dir . 'data_global.' . $phpEx);
|
||||
}
|
||||
|
||||
function unload()
|
||||
|
@ -58,7 +58,7 @@ class acm
|
|||
global $phpEx;
|
||||
$file = '<?php $this->vars=' . $this->format_array($this->vars) . ";\n\$this->vars_ts=" . $this->format_array($this->vars_ts) . ' ?>';
|
||||
|
||||
if ($fp = @fopen($this->cache_dir . 'global.' . $phpEx, 'wb'))
|
||||
if ($fp = @fopen($this->cache_dir . 'data_global.' . $phpEx, 'wb'))
|
||||
{
|
||||
@flock($fp, LOCK_EX);
|
||||
fwrite($fp, $file);
|
||||
|
@ -74,16 +74,18 @@ class acm
|
|||
$dir = opendir($this->cache_dir);
|
||||
while ($entry = readdir($dir))
|
||||
{
|
||||
if ($entry{0} == '.' || is_dir($this->cache_dir . $entry))
|
||||
if ($entry{0} == '.' || substr($entry, 0, 4) != 'sql_')
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (time() - $expire_time >= filemtime($this->cache_dir . $entry))
|
||||
{
|
||||
unlink($this->cache_dir . $entry);
|
||||
}
|
||||
}
|
||||
if (file_exists($this->cache_dir . 'global.' . $phpEx))
|
||||
|
||||
if (file_exists($this->cache_dir . 'data_global.' . $phpEx))
|
||||
{
|
||||
foreach ($this->vars_ts as $varname => $timestamp)
|
||||
{
|
||||
|
@ -173,13 +175,13 @@ class acm
|
|||
// Remove extra spaces and tabs
|
||||
$query = preg_replace('/[\n\r\s\t]+/', ' ', $query);
|
||||
|
||||
$filemtime = intval(@filemtime($this->cache_dir . md5($query) . '.' . $phpEx));
|
||||
$filemtime = intval(@filemtime($this->cache_dir . 'sql_' . md5($query) . '.' . $phpEx));
|
||||
if (time() - $filemtime > $expire_time)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
include($this->cache_dir . md5($query) . '.' . $phpEx);
|
||||
include($this->cache_dir . 'sql_' . md5($query) . '.' . $phpEx);
|
||||
|
||||
$query_id = 'Cache id #' . count($this->sql_rowset);
|
||||
$this->sql_rowset[$query_id] = $rowset;
|
||||
|
@ -194,7 +196,7 @@ class acm
|
|||
// Remove extra spaces and tabs
|
||||
$query = preg_replace('/[\n\r\s\t]+/', ' ', $query);
|
||||
|
||||
if ($fp = @fopen($this->cache_dir . md5($query) . '.' . $phpEx, 'wb'))
|
||||
if ($fp = @fopen($this->cache_dir . 'sql_' . md5($query) . '.' . $phpEx, 'wb'))
|
||||
{
|
||||
@flock($fp, LOCK_EX);
|
||||
|
||||
|
|
|
@ -50,7 +50,7 @@ class template
|
|||
// Root dir and hash of filenames for each template handle.
|
||||
var $tpl = '';
|
||||
var $root = '';
|
||||
var $cache_root = 'cache/templates/';
|
||||
var $cachepath = '';
|
||||
var $files = array();
|
||||
|
||||
// this will hash handle names to the compiled/uncompiled code for that handle.
|
||||
|
@ -72,24 +72,18 @@ class template
|
|||
{
|
||||
// $this->tpl = 'primary';
|
||||
$this->root = $phpbb_root_path . 'styles/templates/' . $user->theme['primary']['template_path'];
|
||||
$this->cachedir = $phpbb_root_path . $this->cache_root . $user->theme['primary']['template_path'] . '/';
|
||||
$this->cachepath = $phpbb_root_path . 'cache/tpl_' . $user->theme['primary']['template_path'] . '_';
|
||||
}
|
||||
else
|
||||
{
|
||||
// $this->tpl = 'secondary';
|
||||
$this->root = $phpbb_root_path . 'styles/templates/' . $user->theme['secondary']['template_path'];
|
||||
$this->cachedir = $phpbb_root_path . $this->cache_root . $user->theme['secondary']['template_path'] . '/';
|
||||
$this->cachepath = $phpbb_root_path . 'cache/tpl_' . $user->theme['secondary']['template_path'] . '_';
|
||||
}
|
||||
|
||||
$this->static_lang = $static_lang;
|
||||
$this->force_recompile = $force_recompile;
|
||||
|
||||
if (!file_exists($this->cachedir))
|
||||
{
|
||||
@umask(0);
|
||||
mkdir($this->cachedir, 0777);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -148,7 +142,7 @@ class template
|
|||
{
|
||||
global $phpEx, $user;
|
||||
|
||||
$filename = $this->cachedir . $this->filename[$handle] . '.' . (($this->static_lang) ? $user->data['user_lang'] . '.' : '') . $phpEx;
|
||||
$filename = $this->cachepath . $this->filename[$handle] . '.' . (($this->static_lang) ? $user->data['user_lang'] . '.' : '') . $phpEx;
|
||||
|
||||
// Recompile page if the original template is newer, otherwise load the compiled version
|
||||
if (file_exists($filename) && !$this->force_recompile)
|
||||
|
@ -182,7 +176,7 @@ class template
|
|||
trigger_error("template->_tpl_load(): File $filename does not exist or is empty", E_USER_ERROR);
|
||||
}
|
||||
|
||||
$str = fread($fp, filesize($this->files[$handle]));
|
||||
$str = @fread($fp, filesize($this->files[$handle]));
|
||||
@fclose($fp);
|
||||
|
||||
// Actually compile the code now.
|
||||
|
@ -718,7 +712,7 @@ class template
|
|||
{
|
||||
global $phpEx, $user;
|
||||
|
||||
$filename = $this->cachedir . $this->filename[$handle] . '.' . (($this->static_lang) ? $user->data['user_lang'] . '.' : '') . $phpEx;
|
||||
$filename = $this->cachepath . $this->filename[$handle] . '.' . (($this->static_lang) ? $user->data['user_lang'] . '.' : '') . $phpEx;
|
||||
|
||||
if ($fp = @fopen($filename, 'w+'))
|
||||
{
|
||||
|
|
|
@ -413,7 +413,7 @@ if ($stage == 0)
|
|||
|
||||
foreach ($locations as $location)
|
||||
{
|
||||
if (file_exists($location . 'convert' . $exe) && is_readable($location . 'convert' . $exe))
|
||||
if (@file_exists($location . 'convert' . $exe) && @is_readable($location . 'convert' . $exe))
|
||||
{
|
||||
$img_imagick = str_replace('\\', '/', $location);
|
||||
continue;
|
||||
|
@ -445,7 +445,7 @@ if ($stage == 0)
|
|||
<table cellspacing="1" cellpadding="4" border="0">
|
||||
<?php
|
||||
|
||||
$directories = array('cache/', 'cache/templates/', 'cache/themes/', 'cache/tmp/', 'files/');
|
||||
$directories = array('cache/', 'files/');
|
||||
|
||||
umask(0);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue