diff options
Diffstat (limited to 'phpBB/includes/acp')
| -rw-r--r-- | phpBB/includes/acp/acp_extensions.php | 3 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_inactive.php | 2 | ||||
| -rw-r--r-- | phpBB/includes/acp/acp_users.php | 26 | ||||
| -rw-r--r-- | phpBB/includes/acp/auth.php | 10 | 
4 files changed, 35 insertions, 6 deletions
| diff --git a/phpBB/includes/acp/acp_extensions.php b/phpBB/includes/acp/acp_extensions.php index 193483050c..a3849d8ba1 100644 --- a/phpBB/includes/acp/acp_extensions.php +++ b/phpBB/includes/acp/acp_extensions.php @@ -369,6 +369,7 @@ class acp_extensions  		foreach ($enabled_extension_meta_data as $name => $block_vars)  		{ +			$block_vars['NAME'] = $name;  			$block_vars['U_DETAILS'] = $this->u_action . '&action=details&ext_name=' . urlencode($name);  			$this->template->assign_block_vars('enabled', $block_vars); @@ -425,6 +426,7 @@ class acp_extensions  		foreach ($disabled_extension_meta_data as $name => $block_vars)  		{ +			$block_vars['NAME'] = $name;  			$block_vars['U_DETAILS'] = $this->u_action . '&action=details&ext_name=' . urlencode($name);  			$this->template->assign_block_vars('disabled', $block_vars); @@ -484,6 +486,7 @@ class acp_extensions  		foreach ($available_extension_meta_data as $name => $block_vars)  		{ +			$block_vars['NAME'] = $name;  			$block_vars['U_DETAILS'] = $this->u_action . '&action=details&ext_name=' . urlencode($name);  			$this->template->assign_block_vars('disabled', $block_vars); diff --git a/phpBB/includes/acp/acp_inactive.php b/phpBB/includes/acp/acp_inactive.php index e96c42de05..4a70401026 100644 --- a/phpBB/includes/acp/acp_inactive.php +++ b/phpBB/includes/acp/acp_inactive.php @@ -271,7 +271,7 @@ class acp_inactive  				'REMINDED_EXPLAIN'	=> $user->lang('USER_LAST_REMINDED', (int) $row['user_reminded'], $user->format_date($row['user_reminded_time'])), -				'USERNAME_FULL'		=> get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'], false, append_sid("{$phpbb_admin_path}index.$phpEx", 'i=users&mode=overview')), +				'USERNAME_FULL'		=> get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'], false, append_sid("{$phpbb_admin_path}index.$phpEx", 'i=users&mode=overview&redirect=acp_inactive')),  				'USERNAME'			=> get_username_string('username', $row['user_id'], $row['username'], $row['user_colour']),  				'USER_COLOR'		=> get_username_string('colour', $row['user_id'], $row['username'], $row['user_colour']), diff --git a/phpBB/includes/acp/acp_users.php b/phpBB/includes/acp/acp_users.php index 8c17fb6311..644beda77b 100644 --- a/phpBB/includes/acp/acp_users.php +++ b/phpBB/includes/acp/acp_users.php @@ -44,6 +44,11 @@ class acp_users  		$user_id	= request_var('u', 0);  		$action		= request_var('action', ''); +		// Get referer to redirect user to the appropriate page after delete action +		$redirect		= request_var('redirect', ''); +		$redirect_tag	= "redirect=$redirect"; +		$redirect_url	= append_sid("{$phpbb_admin_path}index.$phpEx", "i=$redirect"); +  		$submit		= (isset($_POST['update']) && !isset($_POST['cancel'])) ? true : false;  		$form_name = 'acp_users'; @@ -146,9 +151,9 @@ class acp_users  		}  		$template->assign_vars(array( -			'U_BACK'			=> $this->u_action, +			'U_BACK'			=> (empty($redirect)) ? $this->u_action : $redirect_url,  			'U_MODE_SELECT'		=> append_sid("{$phpbb_admin_path}index.$phpEx", "i=$id&u=$user_id"), -			'U_ACTION'			=> $this->u_action . '&u=' . $user_id, +			'U_ACTION'			=> $this->u_action . '&u=' . $user_id . ((empty($redirect)) ? '' : '&' . $redirect_tag),  			'S_FORM_OPTIONS'	=> $s_form_options,  			'MANAGED_USERNAME'	=> $user_row['username'])  		); @@ -221,19 +226,30 @@ class acp_users  								user_delete($delete_type, $user_id, $user_row['username']);  								add_log('admin', 'LOG_USER_DELETED', $user_row['username']); -								trigger_error($user->lang['USER_DELETED'] . adm_back_link($this->u_action)); +								trigger_error($user->lang['USER_DELETED'] . adm_back_link( +										(empty($redirect)) ? $this->u_action : $redirect_url +									) +								);  							}  							else  							{ -								confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array( +								$delete_confirm_hidden_fields = array(  									'u'				=> $user_id,  									'i'				=> $id,  									'mode'			=> $mode,  									'action'		=> $action,  									'update'		=> true,  									'delete'		=> 1, -									'delete_type'	=> $delete_type)) +									'delete_type'	=> $delete_type,  								); + +								// Checks if the redirection page is specified +								if (!empty($redirect)) +								{ +									$delete_confirm_hidden_fields['redirect'] = $redirect; +								} + +								confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields($delete_confirm_hidden_fields));  							}  						}  						else diff --git a/phpBB/includes/acp/auth.php b/phpBB/includes/acp/auth.php index 905e981cdc..52c45499b2 100644 --- a/phpBB/includes/acp/auth.php +++ b/phpBB/includes/acp/auth.php @@ -1113,6 +1113,11 @@ class auth_admin extends \phpbb\auth\auth  		@reset($category_array);  		while (list($cat, $cat_array) = each($category_array))  		{ +			if (!$phpbb_permissions->category_defined($cat)) +			{ +				continue; +			} +  			$template->assign_block_vars($tpl_cat, array(  				'S_YES'		=> ($cat_array['S_YES'] && !$cat_array['S_NEVER'] && !$cat_array['S_NO']) ? true : false,  				'S_NEVER'	=> ($cat_array['S_NEVER'] && !$cat_array['S_YES'] && !$cat_array['S_NO']) ? true : false, @@ -1139,6 +1144,11 @@ class auth_admin extends \phpbb\auth\auth  			@reset($cat_array['permissions']);  			while (list($permission, $allowed) = each($cat_array['permissions']))  			{ +				if (!$phpbb_permissions->permission_defined($permission)) +				{ +					continue; +				} +  				if ($s_view)  				{  					$template->assign_block_vars($tpl_cat . '.' . $tpl_mask, array( | 
