diff options
Diffstat (limited to 'phpBB/includes/functions_content.php')
| -rw-r--r-- | phpBB/includes/functions_content.php | 29 | 
1 files changed, 24 insertions, 5 deletions
| diff --git a/phpBB/includes/functions_content.php b/phpBB/includes/functions_content.php index e05fcb0586..87dd306e8a 100644 --- a/phpBB/includes/functions_content.php +++ b/phpBB/includes/functions_content.php @@ -150,7 +150,7 @@ function gen_sort_selects(&$limit_days, &$sort_by_text, &$sort_days, &$sort_key,  */  function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list = false, $force_display = false)  { -	global $config, $auth, $template, $user, $db, $phpbb_path_helper; +	global $config, $auth, $template, $user, $db, $phpbb_path_helper, $phpbb_dispatcher;  	// We only return if the jumpbox is not forced to be displayed (in case it is needed for functionality)  	if (!$config['load_jumpbox'] && $force_display === false) @@ -205,20 +205,21 @@ function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list  			continue;  		} +		$tpl_ary = array();  		if (!$display_jumpbox)  		{ -			$template->assign_block_vars('jumpbox_forums', array( +			$tpl_ary[] = array(  				'FORUM_ID'		=> ($select_all) ? 0 : -1,  				'FORUM_NAME'	=> ($select_all) ? $user->lang['ALL_FORUMS'] : $user->lang['SELECT_FORUM'],  				'S_FORUM_COUNT'	=> $iteration,  				'LINK'			=> $phpbb_path_helper->append_url_params($action, array('f' => $forum_id)), -			)); +			);  			$iteration++;  			$display_jumpbox = true;  		} -		$template->assign_block_vars('jumpbox_forums', array( +		$tpl_ary[] = array(  			'FORUM_ID'		=> $row['forum_id'],  			'FORUM_NAME'	=> $row['forum_name'],  			'SELECTED'		=> ($row['forum_id'] == $forum_id) ? ' selected="selected"' : '', @@ -227,7 +228,25 @@ function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list  			'S_IS_LINK'		=> ($row['forum_type'] == FORUM_LINK) ? true : false,  			'S_IS_POST'		=> ($row['forum_type'] == FORUM_POST) ? true : false,  			'LINK'			=> $phpbb_path_helper->append_url_params($action, array('f' => $row['forum_id'])), -		)); +		); + +		/** +		 * Modify the jumpbox before it is assigned to the template +		 * +		 * @event core.make_jumpbox_modify_tpl_ary +		 * @var	array	row				The data of the forum +		 * @var	array	tpl_ary			Template data of the forum +		 * @since 3.1.10-RC1 +		 */ +		$vars = array( +			'row', +			'tpl_ary', +		); +		extract($phpbb_dispatcher->trigger_event('core.make_jumpbox_modify_tpl_ary', compact($vars))); + +		$template->assign_block_vars_array('jumpbox_forums', $tpl_ary); + +		unset($tpl_ary);  		for ($i = 0; $i < $padding; $i++)  		{ | 
