diff options
| author | Joas Schilling <nickvergessen@gmx.de> | 2014-11-21 19:28:07 +0100 | 
|---|---|---|
| committer | Joas Schilling <nickvergessen@gmx.de> | 2014-11-21 19:28:07 +0100 | 
| commit | 4bf3dcbebdbb105262d48033050535b95fbfb0f0 (patch) | |
| tree | 716b6a20ff61439febb73c092c155754a18278ae | |
| parent | c31b53942d7b77f9cb069da24eecc703fba34468 (diff) | |
| parent | 1e867ce52b1f3354e963b83c7d48f592bbd583e9 (diff) | |
| download | forums-4bf3dcbebdbb105262d48033050535b95fbfb0f0.tar forums-4bf3dcbebdbb105262d48033050535b95fbfb0f0.tar.gz forums-4bf3dcbebdbb105262d48033050535b95fbfb0f0.tar.bz2 forums-4bf3dcbebdbb105262d48033050535b95fbfb0f0.tar.xz forums-4bf3dcbebdbb105262d48033050535b95fbfb0f0.zip  | |
Merge pull request #3114 from rxu/ticket/13294
[ticket/13294] Add function parse() core event for additional message checks
| -rw-r--r-- | phpBB/includes/message_parser.php | 45 | 
1 files changed, 44 insertions, 1 deletions
diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index 92ace7b585..bc996cf275 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -1103,7 +1103,7 @@ class parse_message extends bbcode_firstpass  	*/  	function parse($allow_bbcode, $allow_magic_url, $allow_smilies, $allow_img_bbcode = true, $allow_flash_bbcode = true, $allow_quote_bbcode = true, $allow_url_bbcode = true, $update_this_message = true, $mode = 'post')  	{ -		global $config, $db, $user; +		global $config, $db, $user, $phpbb_dispatcher;  		$this->mode = $mode; @@ -1158,6 +1158,49 @@ class parse_message extends bbcode_firstpass  			}  		} +		/** +		* This event can be used for additional message checks/cleanup before parsing +		* +		* @event core.message_parser_check_message +		* @var bool		allow_bbcode			Do we allow BBCodes +		* @var bool		allow_magic_url			Do we allow magic urls +		* @var bool		allow_smilies			Do we allow smilies +		* @var bool		allow_img_bbcode		Do we allow image BBCode +		* @var bool		allow_flash_bbcode		Do we allow flash BBCode +		* @var bool		allow_quote_bbcode		Do we allow quote BBCode +		* @var bool		allow_url_bbcode		Do we allow url BBCode +		* @var bool		update_this_message		Do we alter the parsed message +		* @var string	mode					Posting mode +		* @var string	message					The message text to parse +		* @var bool		return					Do we return after the event is triggered if $warn_msg is not empty +		* @var array	warn_msg				Array of the warning messages +		* @since 3.1.2-RC1 +		*/ +		$message = $this->message; +		$warn_msg = $this->warn_msg; +		$return = false; +		$vars = array( +			'allow_bbcode', +			'allow_magic_url', +			'allow_smilies', +			'allow_img_bbcode', +			'allow_flash_bbcode', +			'allow_quote_bbcode', +			'allow_url_bbcode', +			'update_this_message', +			'mode', +			'message', +			'return', +			'warn_msg', +		); +		extract($phpbb_dispatcher->trigger_event('core.message_parser_check_message', compact($vars))); +		$this->message = $message; +		$this->warn_msg = $warn_msg; +		if ($return && !empty($this->warn_msg)) +		{ +			return (!$update_this_message) ? $return_message : $this->warn_msg; +		} +  		// Prepare BBcode (just prepares some tags for better parsing)  		if ($allow_bbcode && strpos($this->message, '[') !== false)  		{  | 
