1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-31 14:00:31 +02:00

[feature/extension-manager] Don't cache the phpbb_root_path in the ext manager

Otherwise the paths are incorrect from e.g. adm/

PHPBB3-10323
This commit is contained in:
Nils Adermann
2011-08-30 01:15:43 -04:00
parent 6c6a7d7992
commit 6ea6d50ccb
4 changed files with 15 additions and 7 deletions

View File

@@ -161,6 +161,8 @@ class phpbb_extension_finder
*/
public function directory($directory)
{
$directory = preg_replace('#(?:^|/)\./#', '/', $directory);
if (strlen($directory) > 1 && $directory[strlen($directory) - 1] === '/')
{
$directory = substr($directory, 0, -1);

View File

@@ -93,7 +93,7 @@ class phpbb_extension_manager
*/
public function get_extension_path($name)
{
return $this->phpbb_root_path . 'ext/' . basename($name) . '/';
return 'ext/' . basename($name) . '/';
}
/**
@@ -315,7 +315,13 @@ class phpbb_extension_manager
*/
public function all_configured()
{
return $this->extensions;
$configured = array();
foreach ($this->extensions as $name => $data)
{
$data['ext_path'] = $this->phpbb_root_path . $data['ext_path'];
$configured[$name] = $data;
}
return $configured;
}
/**
@@ -331,7 +337,7 @@ class phpbb_extension_manager
{
if ($data['ext_active'])
{
$enabled[$name] = $data['ext_path'];
$enabled[$name] = $this->phpbb_root_path . $data['ext_path'];
}
}
return $enabled;
@@ -350,7 +356,7 @@ class phpbb_extension_manager
{
if (!$data['ext_active'])
{
$disabled[$name] = $data['ext_path'];
$disabled[$name] = $this->phpbb_root_path . $data['ext_path'];
}
}
return $disabled;