diff options
| author | kasimi <mail@kasimi.net> | 2018-01-28 16:14:29 +0100 | 
|---|---|---|
| committer | kasimi <mail@kasimi.net> | 2018-01-28 16:14:29 +0100 | 
| commit | 013f9819b00bb941faee9c0578bd6fb2f3378a72 (patch) | |
| tree | ac30eb6ff68fe96c6bd7ca2e9376cd5514891f25 | |
| parent | adc75b700f0cf3d6d47689c00932fd1f41bc58e9 (diff) | |
| download | forums-013f9819b00bb941faee9c0578bd6fb2f3378a72.tar forums-013f9819b00bb941faee9c0578bd6fb2f3378a72.tar.gz forums-013f9819b00bb941faee9c0578bd6fb2f3378a72.tar.bz2 forums-013f9819b00bb941faee9c0578bd6fb2f3378a72.tar.xz forums-013f9819b00bb941faee9c0578bd6fb2f3378a72.zip  | |
[ticket/15537] Add core.search_(native|mysql|postgres|sphinx)_index_before
PHPBB3-15537
| -rw-r--r-- | phpBB/phpbb/search/fulltext_mysql.php | 28 | ||||
| -rw-r--r-- | phpBB/phpbb/search/fulltext_native.php | 29 | ||||
| -rw-r--r-- | phpBB/phpbb/search/fulltext_postgres.php | 28 | ||||
| -rw-r--r-- | phpBB/phpbb/search/fulltext_sphinx.php | 22 | 
4 files changed, 107 insertions, 0 deletions
diff --git a/phpBB/phpbb/search/fulltext_mysql.php b/phpBB/phpbb/search/fulltext_mysql.php index 51c5fe8b76..cc8180ec69 100644 --- a/phpBB/phpbb/search/fulltext_mysql.php +++ b/phpBB/phpbb/search/fulltext_mysql.php @@ -918,6 +918,34 @@ class fulltext_mysql extends \phpbb\search\base  		$words = array_unique(array_merge($split_text, $split_title)); +		/** +		* Event to modify method arguments and words before the MySQL search index is updated +		* +		* @event core.search_mysql_index_before +		* @var string	mode				Contains the post mode: edit, post, reply, quote +		* @var int		post_id				The id of the post which is modified/created +		* @var string	message				New or updated post content +		* @var string	subject				New or updated post subject +		* @var int		poster_id			Post author's user id +		* @var int		forum_id			The id of the forum in which the post is located +		* @var array	words				List of words added to the index +		* @var array	split_text			Array of words from the message +		* @var array	split_title			Array of words from the title +		* @since 3.2.3-RC1 +		*/ +		$vars = array( +			'mode', +			'post_id', +			'message', +			'subject', +			'poster_id', +			'forum_id', +			'words', +			'split_text', +			'split_title', +		); +		extract($this->phpbb_dispatcher->trigger_event('core.search_mysql_index_before', compact($vars))); +  		unset($split_text);  		unset($split_title); diff --git a/phpBB/phpbb/search/fulltext_native.php b/phpBB/phpbb/search/fulltext_native.php index bd222488a0..76d86526af 100644 --- a/phpBB/phpbb/search/fulltext_native.php +++ b/phpBB/phpbb/search/fulltext_native.php @@ -1433,6 +1433,35 @@ class fulltext_native extends \phpbb\search\base  			$words['del']['post'] = array();  			$words['del']['title'] = array();  		} + +		/** +		* Event to modify method arguments and words before the native search index is updated +		* +		* @event core.search_native_index_before +		* @var string	mode				Contains the post mode: edit, post, reply, quote +		* @var int		post_id				The id of the post which is modified/created +		* @var string	message				New or updated post content +		* @var string	subject				New or updated post subject +		* @var int		poster_id			Post author's user id +		* @var int		forum_id			The id of the forum in which the post is located +		* @var array	words				Grouped lists of words added to or remove from the index +		* @var array	split_text			Array of words from the message +		* @var array	split_title			Array of words from the title +		* @since 3.2.3-RC1 +		*/ +		$vars = array( +			'mode', +			'post_id', +			'message', +			'subject', +			'poster_id', +			'forum_id', +			'words', +			'split_text', +			'split_title', +		); +		extract($this->phpbb_dispatcher->trigger_event('core.search_native_index_before', compact($vars))); +  		unset($split_text);  		unset($split_title); diff --git a/phpBB/phpbb/search/fulltext_postgres.php b/phpBB/phpbb/search/fulltext_postgres.php index 6443342057..ac76f2f87a 100644 --- a/phpBB/phpbb/search/fulltext_postgres.php +++ b/phpBB/phpbb/search/fulltext_postgres.php @@ -889,6 +889,34 @@ class fulltext_postgres extends \phpbb\search\base  		$words = array_unique(array_merge($split_text, $split_title)); +		/** +		* Event to modify method arguments and words before the PostgreSQL search index is updated +		* +		* @event core.search_postgres_index_before +		* @var string	mode				Contains the post mode: edit, post, reply, quote +		* @var int		post_id				The id of the post which is modified/created +		* @var string	message				New or updated post content +		* @var string	subject				New or updated post subject +		* @var int		poster_id			Post author's user id +		* @var int		forum_id			The id of the forum in which the post is located +		* @var array	words				Array of words added to the index +		* @var array	split_text			Array of words from the message +		* @var array	split_title			Array of words from the title +		* @since 3.2.3-RC1 +		*/ +		$vars = array( +			'mode', +			'post_id', +			'message', +			'subject', +			'poster_id', +			'forum_id', +			'words', +			'split_text', +			'split_title', +		); +		extract($this->phpbb_dispatcher->trigger_event('core.search_postgres_index_before', compact($vars))); +  		unset($split_text);  		unset($split_title); diff --git a/phpBB/phpbb/search/fulltext_sphinx.php b/phpBB/phpbb/search/fulltext_sphinx.php index 54d32ca371..e2eeb5f7f3 100644 --- a/phpBB/phpbb/search/fulltext_sphinx.php +++ b/phpBB/phpbb/search/fulltext_sphinx.php @@ -758,6 +758,28 @@ class fulltext_sphinx  	 */  	public function index($mode, $post_id, &$message, &$subject, $poster_id, $forum_id)  	{ +		/** +		* Event to modify method arguments before the Sphinx search index is updated +		* +		* @event core.search_sphinx_index_before +		* @var string	mode				Contains the post mode: edit, post, reply, quote +		* @var int		post_id				The id of the post which is modified/created +		* @var string	message				New or updated post content +		* @var string	subject				New or updated post subject +		* @var int		poster_id			Post author's user id +		* @var int		forum_id			The id of the forum in which the post is located +		* @since 3.2.3-RC1 +		*/ +		$vars = array( +			'mode', +			'post_id', +			'message', +			'subject', +			'poster_id', +			'forum_id', +		); +		extract($this->phpbb_dispatcher->trigger_event('core.search_sphinx_index_before', compact($vars))); +  		if ($mode == 'edit')  		{  			$this->sphinx->UpdateAttributes($this->indexes, array('forum_id', 'poster_id'), array((int) $post_id => array((int) $forum_id, (int) $poster_id)));  | 
