diff options
| -rw-r--r-- | phpBB/includes/functions_admin.php | 23 | 
1 files changed, 22 insertions, 1 deletions
| diff --git a/phpBB/includes/functions_admin.php b/phpBB/includes/functions_admin.php index 79f9db2f3f..96e0895ff8 100644 --- a/phpBB/includes/functions_admin.php +++ b/phpBB/includes/functions_admin.php @@ -500,7 +500,7 @@ function filelist($rootdir, $dir = '', $type = 'gif|jpg|jpeg|png')  */  function move_topics($topic_ids, $forum_id, $auto_sync = true)  { -	global $db; +	global $db, $phpbb_dispatcher;  	if (empty($topic_ids))  	{ @@ -534,6 +534,27 @@ function move_topics($topic_ids, $forum_id, $auto_sync = true)  	}  	$table_ary = array(TOPICS_TABLE, POSTS_TABLE, LOG_TABLE, DRAFTS_TABLE, TOPICS_TRACK_TABLE); + +	/** +	 * Perform additional actions before topics move +	 * +	 * @event core.move_topics_before_query +	 * @var	array	table_ary	Array of tables from which forum_id will be updated for all rows that hold the moved topics +	 * @var	array	topic_ids	Array of the moved topic ids  +	 * @var	string	forum_id	The forum id from where the topics are moved +	 * @var	array	forum_ids	Array of the forums where the topics are moving (includes also forum_id) +	 * @var bool	auto_sync	Whether or not to perform auto sync +	 * @since 3.1.5-RC1 +	 */ +	$vars = array( +			'table_ary', +			'topic_ids', +			'forum_id', +			'forum_ids', +			'auto_sync', +	); +	extract($phpbb_dispatcher->trigger_event('core.move_topics_before_query', compact($vars))); +  	foreach ($table_ary as $table)  	{  		$sql = "UPDATE $table | 
