1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-06 16:56:44 +02:00

[feature/template-events] Inject extension manager into template class.

Template class passes extension manager to template compiler.

Template compiler passes extension manager to template filter.

Template filter will use extension manager to locate hooks
as it is compiling templates.

All extension manager arguments are optional. If an extension
manager is not given, template hooks will not be invoked.

PHPBB3-9550
This commit is contained in:
Oleg Pudeyev
2011-11-27 00:46:36 -05:00
parent ed548ae8ff
commit d6c881d0c6
6 changed files with 27 additions and 7 deletions

View File

@@ -35,16 +35,18 @@ class phpbb_template_compile
/**
* Constructor.
*
* @param bool @allow_php Whether PHP code will be allowed in templates (inline PHP code, PHP tag and INCLUDEPHP tag)
* @param bool $allow_php Whether PHP code will be allowed in templates (inline PHP code, PHP tag and INCLUDEPHP tag)
* @param phpbb_style_resource_locator $locator Resource locator
* @param string $phpbb_root_path Path to phpBB root directory
* @param phpbb_extension_manager $extension_manager Extension manager to use for finding template fragments in extensions; if null, template hooks will not be invoked
*/
public function __construct($allow_php, $locator, $phpbb_root_path)
public function __construct($allow_php, $locator, $phpbb_root_path, $extension_manager = null)
{
$this->filter_params = array(
'allow_php' => $allow_php,
'locator' => $locator,
'phpbb_root_path' => $phpbb_root_path
'phpbb_root_path' => $phpbb_root_path,
'extension_manager' => $extension_manager,
);
}