aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrxu <rxu@mail.ru>2017-01-11 23:53:12 +0700
committerrxu <rxu@mail.ru>2017-04-16 22:43:50 +0700
commit1ea114ca20bd4613420284d7bfc4c92ab0a817b4 (patch)
tree907b39f536ccb10e22140b4728e43c3184140fa5
parent633bbc9c6d42785233ea10165a081c7c32795d1c (diff)
downloadforums-1ea114ca20bd4613420284d7bfc4c92ab0a817b4.tar
forums-1ea114ca20bd4613420284d7bfc4c92ab0a817b4.tar.gz
forums-1ea114ca20bd4613420284d7bfc4c92ab0a817b4.tar.bz2
forums-1ea114ca20bd4613420284d7bfc4c92ab0a817b4.tar.xz
forums-1ea114ca20bd4613420284d7bfc4c92ab0a817b4.zip
[ticket/14990] Fix event name, email parsing, installer and dispatcher calls
PHPBB3-14990
-rw-r--r--phpBB/config/installer/container/services.yml1
-rw-r--r--phpBB/includes/functions_messenger.php6
-rw-r--r--phpBB/phpbb/template/twig/environment.php32
-rw-r--r--tests/email/email_parsing_test.php3
4 files changed, 25 insertions, 17 deletions
diff --git a/phpBB/config/installer/container/services.yml b/phpBB/config/installer/container/services.yml
index c16547c649..7bab8f7835 100644
--- a/phpBB/config/installer/container/services.yml
+++ b/phpBB/config/installer/container/services.yml
@@ -85,6 +85,7 @@ services:
- null
- '@template.twig.loader'
- []
+ - null
calls:
- [setLexer, ['@template.twig.lexer']]
diff --git a/phpBB/includes/functions_messenger.php b/phpBB/includes/functions_messenger.php
index 757a49003b..983cc91688 100644
--- a/phpBB/includes/functions_messenger.php
+++ b/phpBB/includes/functions_messenger.php
@@ -656,7 +656,7 @@ class messenger
*/
protected function setup_template()
{
- global $phpbb_container;
+ global $phpbb_container, $phpbb_dispatcher;
if ($this->template instanceof \phpbb\template\template)
{
@@ -671,7 +671,9 @@ class messenger
$phpbb_container->get('ext.manager'),
new \phpbb\template\twig\loader(
$phpbb_container->get('filesystem')
- )
+ ),
+ array(),
+ $phpbb_dispatcher
);
$template_environment->setLexer($phpbb_container->get('template.twig.lexer'));
diff --git a/phpBB/phpbb/template/twig/environment.php b/phpBB/phpbb/template/twig/environment.php
index b2b4f990dd..d9e84b042e 100644
--- a/phpBB/phpbb/template/twig/environment.php
+++ b/phpBB/phpbb/template/twig/environment.php
@@ -32,9 +32,7 @@ class environment extends \Twig_Environment
/** @var \phpbb\extension\manager */
protected $extension_manager;
- /**
- * @var \phpbb\event\dispatcher_interface
- */
+ /** @var \phpbb\event\dispatcher_interface */
protected $phpbb_dispatcher;
/** @var string */
@@ -61,7 +59,7 @@ class environment extends \Twig_Environment
* @param array $options Array of options to pass to Twig
* @param \phpbb\event\dispatcher_interface $phpbb_dispatcher Event dispatcher object
*/
- public function __construct(\phpbb\config\config $phpbb_config, \phpbb\filesystem\filesystem $filesystem, \phpbb\path_helper $path_helper, $cache_path, \phpbb\extension\manager $extension_manager = null, \Twig_LoaderInterface $loader = null, $options = array(), \phpbb\event\dispatcher_interface $phpbb_dispatcher = null)
+ public function __construct(\phpbb\config\config $phpbb_config, \phpbb\filesystem\filesystem $filesystem, \phpbb\path_helper $path_helper, $cache_path, \phpbb\extension\manager $extension_manager = null, \Twig_LoaderInterface $loader = null, $options = array(), \phpbb\event\dispatcher_interface $phpbb_dispatcher = null)
{
$this->phpbb_config = $phpbb_config;
@@ -213,26 +211,32 @@ class environment extends \Twig_Environment
* Allow changing the template output stream before rendering
*
* @event core.twig_environment_render_template_before
- * @var array $context Array with template variables
- * @var string $name The template name
+ * @var array context Array with template variables
+ * @var string name The template name
* @since 3.2.1-RC1
*/
- $vars = array('context', 'name');
- extract($this->phpbb_dispatcher->trigger_event('core.twig_environment_render_template_before', compact($vars)));
+ if ($this->phpbb_dispatcher)
+ {
+ $vars = array('context', 'name');
+ extract($this->phpbb_dispatcher->trigger_event('core.twig_environment_render_template_before', compact($vars)));
+ }
$output = parent::render($name, $context);
/**
* Allow changing the template output stream after rendering
*
- * @event core.twig_environment_render_template_before
- * @var array $context Array with template variables
- * @var string $name The template name
- * @var string $output Rendered template output stream
+ * @event core.twig_environment_render_template_after
+ * @var array context Array with template variables
+ * @var string name The template name
+ * @var string output Rendered template output stream
* @since 3.2.1-RC1
*/
- $vars = array('context', 'name', 'output');
- extract($this->phpbb_dispatcher->trigger_event('core.twig_environment_render_template_after', compact($vars)));
+ if ($this->phpbb_dispatcher)
+ {
+ $vars = array('context', 'name', 'output');
+ extract($this->phpbb_dispatcher->trigger_event('core.twig_environment_render_template_after', compact($vars)));
+ }
return $this->inject_assets($output, $placeholder_salt);
}
diff --git a/tests/email/email_parsing_test.php b/tests/email/email_parsing_test.php
index 351a38514f..a8366cf076 100644
--- a/tests/email/email_parsing_test.php
+++ b/tests/email/email_parsing_test.php
@@ -86,7 +86,8 @@ class phpbb_email_parsing_test extends phpbb_test_case
'debug' => false,
'auto_reload' => true,
'autoescape' => false,
- )
+ ),
+ new \phpbb\event\dispatcher($phpbb_container)
);
$twig->addExtension($twig_extension);
$phpbb_container->set('template.twig.lexer', new \phpbb\template\twig\lexer($twig));