diff options
| author | rxu <rxu@mail.ru> | 2015-12-17 23:06:51 +0700 |
|---|---|---|
| committer | rxu <rxu@mail.ru> | 2015-12-17 23:06:51 +0700 |
| commit | fb78fc7ae0d870262483f9dcc588601cd656b66b (patch) | |
| tree | fd79359e0eb246c133d85221dab6211421f6625b | |
| parent | 67f3017274fdc749c9e5c75930dd15e3b1d0317d (diff) | |
| download | forums-fb78fc7ae0d870262483f9dcc588601cd656b66b.tar forums-fb78fc7ae0d870262483f9dcc588601cd656b66b.tar.gz forums-fb78fc7ae0d870262483f9dcc588601cd656b66b.tar.bz2 forums-fb78fc7ae0d870262483f9dcc588601cd656b66b.tar.xz forums-fb78fc7ae0d870262483f9dcc588601cd656b66b.zip | |
[ticket/14366] Add core events to the function decode_message()
Add core event to the function decode_message() in
includes/functions_content.php to allow extensions performing additional
message handling before/after decoding.
PHPBB3-14366
| -rw-r--r-- | phpBB/includes/functions_content.php | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/phpBB/includes/functions_content.php b/phpBB/includes/functions_content.php index 6f861b8607..4fb76a6f7e 100644 --- a/phpBB/includes/functions_content.php +++ b/phpBB/includes/functions_content.php @@ -392,7 +392,7 @@ function phpbb_clean_search_string($search_string) */ function decode_message(&$message, $bbcode_uid = '') { - global $config; + global $config, $phpbb_dispatcher; if ($bbcode_uid) { @@ -405,12 +405,38 @@ function decode_message(&$message, $bbcode_uid = '') $replace = array("\n"); } + /** + * Use this event to modify the message before it is decoded + * + * @event core.decode_message_before + * @var string message The message content + * @var string bbcode_uid The message BBCode UID + * @var string match Match pattern to replace + * @var int replace Replacement for the matched text + * @since 3.1.8-RC1 + */ + $vars = array('message', 'bbcode_uid', 'match', 'replace'); + extract($phpbb_dispatcher->trigger_event('core.decode_message_before', compact($vars))); + $message = str_replace($match, $replace, $message); $match = get_preg_expression('bbcode_htm'); $replace = array('\1', '\1', '\2', '\1', '', ''); $message = preg_replace($match, $replace, $message); + + /** + * Use this event to modify the message after it is decoded + * + * @event core.decode_message_after + * @var string message The message content + * @var string bbcode_uid The message BBCode UID + * @var string match Match pattern to replace + * @var int replace Replacement for the matched text + * @since 3.1.8-RC1 + */ + $vars = array('message', 'bbcode_uid', 'match', 'replace'); + extract($phpbb_dispatcher->trigger_event('core.decode_message_after', compact($vars))); } /** |
