aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/includes/functions_module.php12
-rw-r--r--tests/functional/extension_module_test.php2
2 files changed, 7 insertions, 7 deletions
diff --git a/phpBB/includes/functions_module.php b/phpBB/includes/functions_module.php
index 80477684a8..b33f3d6866 100644
--- a/phpBB/includes/functions_module.php
+++ b/phpBB/includes/functions_module.php
@@ -499,12 +499,12 @@ class p_master
* the style paths for the extension (the ext author can change them
* if necessary).
*/
- $module_dir = explode('_', get_class($this->module));
+ $module_dir = explode('\\', get_class($this->module));
- // 0 phpbb, 1 ext, 2 vendor, 3 extension name, ...
- if (isset($module_dir[3]) && $module_dir[1] === 'ext')
+ // 0 vendor, 1 extension name, ...
+ if (isset($module_dir[1]))
{
- $module_style_dir = $phpbb_root_path . 'ext/' . $module_dir[2] . '/' . $module_dir[3] . '/adm/style';
+ $module_style_dir = $phpbb_root_path . 'ext/' . $module_dir[0] . '/' . $module_dir[1] . '/adm/style';
if (is_dir($module_style_dir))
{
@@ -973,7 +973,7 @@ class p_master
*/
protected function get_short_name($basename)
{
- if (substr($basename, 0, 6) === 'phpbb_')
+ if (substr($basename, 0, 6) === 'phpbb\\' || strpos($basename, '\\') !== false)
{
return $basename;
}
@@ -990,6 +990,6 @@ class p_master
*/
protected function is_full_class($basename)
{
- return (preg_match('/^(phpbb|ucp|mcp|acp)_/', $basename));
+ return (strpos($basename, '\\') !== false || preg_match('/^(ucp|mcp|acp)_/', $basename));
}
}
diff --git a/tests/functional/extension_module_test.php b/tests/functional/extension_module_test.php
index 0c9e0b1654..090cd38daf 100644
--- a/tests/functional/extension_module_test.php
+++ b/tests/functional/extension_module_test.php
@@ -90,7 +90,7 @@ class phpbb_functional_extension_module_test extends phpbb_functional_test_case
{
$this->login();
$this->admin_login();
- $crawler = self::request('GET', 'adm/index.php?i=foo\\bar\\acp\\main_module&mode=mode&sid=' . $this->sid);
+ $crawler = self::request('GET', 'adm/index.php?i=foo%5cbar%5cacp%5cmain_module&mode=mode&sid=' . $this->sid);
$this->assertContains("Bertie rulez!", $crawler->filter('#main')->text());
$this->phpbb_extension_manager->purge('foo/bar');
}