diff options
author | Tristan Darricau <github@nicofuma.fr> | 2014-05-11 14:10:19 +0200 |
---|---|---|
committer | Tristan Darricau <github@nicofuma.fr> | 2014-05-11 14:10:19 +0200 |
commit | 197c801746b148e6bcf7b5824e9077c185bf4e5f (patch) | |
tree | 671351344b6fdb01e2a6081a6fef1a1e9ff9c673 | |
parent | d4fc060bcd61228fdf78da4f2d290a7a17546c46 (diff) | |
download | forums-197c801746b148e6bcf7b5824e9077c185bf4e5f.tar forums-197c801746b148e6bcf7b5824e9077c185bf4e5f.tar.gz forums-197c801746b148e6bcf7b5824e9077c185bf4e5f.tar.bz2 forums-197c801746b148e6bcf7b5824e9077c185bf4e5f.tar.xz forums-197c801746b148e6bcf7b5824e9077c185bf4e5f.zip |
[ticket/12529] Use root_path in controller\resolver to check the template dir
PHPBB3-12529
-rw-r--r-- | phpBB/config/services.yml | 1 | ||||
-rw-r--r-- | phpBB/phpbb/controller/resolver.php | 11 | ||||
-rw-r--r-- | tests/controller/controller_test.php | 2 |
3 files changed, 11 insertions, 3 deletions
diff --git a/phpBB/config/services.yml b/phpBB/config/services.yml index fdd8a33135..45ad108ef9 100644 --- a/phpBB/config/services.yml +++ b/phpBB/config/services.yml @@ -103,6 +103,7 @@ services: class: phpbb\controller\resolver arguments: - @user + - %core.root_path% - @service_container - @template diff --git a/phpBB/phpbb/controller/resolver.php b/phpBB/phpbb/controller/resolver.php index 233179e343..f4cebc5730 100644 --- a/phpBB/phpbb/controller/resolver.php +++ b/phpBB/phpbb/controller/resolver.php @@ -38,17 +38,24 @@ class resolver implements ControllerResolverInterface protected $template; /** + * phpBB root path + * @var string + */ + protected $phpbb_root_path; + + /** * Construct method * * @param \phpbb\user $user User Object * @param ContainerInterface $container ContainerInterface object * @param \phpbb\template\template $template */ - public function __construct(\phpbb\user $user, ContainerInterface $container, \phpbb\template\template $template = null) + public function __construct(\phpbb\user $user, $phpbb_root_path, ContainerInterface $container, \phpbb\template\template $template = null) { $this->user = $user; $this->container = $container; $this->template = $template; + $this->phpbb_root_path = $phpbb_root_path; } /** @@ -94,7 +101,7 @@ class resolver implements ControllerResolverInterface { $controller_style_dir = 'ext/' . $controller_dir[0] . '/' . $controller_dir[1] . '/styles'; - if (is_dir($controller_style_dir)) + if (is_dir($this->phpbb_root_path . $controller_style_dir)) { $this->template->set_style(array($controller_style_dir, 'styles')); } diff --git a/tests/controller/controller_test.php b/tests/controller/controller_test.php index 7b8b78dd22..630757dfd7 100644 --- a/tests/controller/controller_test.php +++ b/tests/controller/controller_test.php @@ -68,7 +68,7 @@ class phpbb_controller_controller_test extends phpbb_test_case include(__DIR__.'/phpbb/controller/foo.php'); } - $resolver = new \phpbb\controller\resolver(new \phpbb\user, $container); + $resolver = new \phpbb\controller\resolver(new \phpbb\user, dirname(__FILE__) . '/', $container); $symfony_request = new Request(); $symfony_request->attributes->set('_controller', 'foo.controller:handle'); |