mirror of
https://github.com/phpbb/phpbb.git
synced 2025-04-21 00:02:18 +02:00
Merge pull request #2441 from Nicofuma/ticket/12529
[ticket/12529] Use root_path in controller\resolver to check the template dir * Nicofuma/ticket/12529: [ticket/12529] Move $phpbb_root_path to the end of the constructor [ticket/12529] Use root_path in controller\resolver to check the template dir
This commit is contained in:
commit
f37ff48e2c
@ -104,6 +104,7 @@ services:
|
||||
arguments:
|
||||
- @user
|
||||
- @service_container
|
||||
- %core.root_path%
|
||||
- @template
|
||||
|
||||
controller.provider:
|
||||
|
@ -33,28 +33,36 @@ class resolver implements ControllerResolverInterface
|
||||
|
||||
/**
|
||||
* phpbb\template\template object
|
||||
* @var phpbb\template\template
|
||||
* @var \phpbb\template\template
|
||||
*/
|
||||
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 string $phpbb_root_path Relative path to phpBB root
|
||||
* @param \phpbb\template\template $template
|
||||
*/
|
||||
public function __construct(\phpbb\user $user, ContainerInterface $container, \phpbb\template\template $template = null)
|
||||
public function __construct(\phpbb\user $user, ContainerInterface $container, $phpbb_root_path, \phpbb\template\template $template = null)
|
||||
{
|
||||
$this->user = $user;
|
||||
$this->container = $container;
|
||||
$this->template = $template;
|
||||
$this->phpbb_root_path = $phpbb_root_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load a controller callable
|
||||
*
|
||||
* @param Symfony\Component\HttpFoundation\Request $request Symfony Request object
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request Symfony Request object
|
||||
* @return bool|Callable Callable or false
|
||||
* @throws \phpbb\controller\exception
|
||||
*/
|
||||
@ -94,7 +102,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'));
|
||||
}
|
||||
@ -109,7 +117,7 @@ class resolver implements ControllerResolverInterface
|
||||
* and should match the parameters of the method you are using as your
|
||||
* controller.
|
||||
*
|
||||
* @param Symfony\Component\HttpFoundation\Request $request Symfony Request object
|
||||
* @param \Symfony\Component\HttpFoundation\Request $request Symfony Request object
|
||||
* @param mixed $controller A callable (controller class, method)
|
||||
* @return bool False
|
||||
* @throws \phpbb\controller\exception
|
||||
|
@ -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, $container, dirname(__FILE__) . '/');
|
||||
$symfony_request = new Request();
|
||||
$symfony_request->attributes->set('_controller', 'foo.controller:handle');
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user