1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-01 14:30:32 +02:00

[ticket/11305] Extract hook finder from cache service.

Unlike most other things in cache service, hook finder does not need
a database connection.

PHPBB3-11305
This commit is contained in:
Oleg Pudeyev
2013-01-01 20:48:04 -05:00
parent 1ca63fb302
commit 7adae349a9
5 changed files with 90 additions and 33 deletions

View File

@@ -403,34 +403,4 @@ class phpbb_cache_service
return $usernames;
}
/**
* Obtain hooks...
*/
function obtain_hooks()
{
if (($hook_files = $this->driver->get('_hooks')) === false)
{
$hook_files = array();
// Now search for hooks...
$dh = @opendir($this->phpbb_root_path . 'includes/hooks/');
if ($dh)
{
while (($file = readdir($dh)) !== false)
{
if (strpos($file, 'hook_') === 0 && substr($file, -(strlen($this->php_ext) + 1)) === '.' . $this->php_ext)
{
$hook_files[] = substr($file, 0, -(strlen($this->php_ext) + 1));
}
}
closedir($dh);
}
$this->driver->put('_hooks', $hook_files);
}
return $hook_files;
}
}