From 11b2bffa8e41a37b778019d0aee4041f72f8c0a0 Mon Sep 17 00:00:00 2001 From: Zoddo Date: Wed, 15 Jul 2015 21:32:40 +0200 Subject: [PATCH] [ticket/13950] Hide undefined permissions This hides the permissions of the disabled extensions PHPBB3-13950 --- phpBB/includes/acp/auth.php | 5 +++++ phpBB/phpbb/permissions.php | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/phpBB/includes/acp/auth.php b/phpBB/includes/acp/auth.php index 905e981cdc..6c13a6694c 100644 --- a/phpBB/includes/acp/auth.php +++ b/phpBB/includes/acp/auth.php @@ -1139,6 +1139,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( diff --git a/phpBB/phpbb/permissions.php b/phpBB/phpbb/permissions.php index 82f59b5c20..7006c84b76 100644 --- a/phpBB/phpbb/permissions.php +++ b/phpBB/phpbb/permissions.php @@ -159,6 +159,17 @@ class permissions return (isset($this->permissions[$permission]['cat'])) ? $this->permissions[$permission]['cat'] : 'misc'; } + /** + * Checks if a permission has been defined + * + * @param string $permission Identifier of the permission + * @return bool True if the permission is defined, false otherwise + */ + public function permission_defined($permission) + { + return isset($this->permissions[$permission]); + } + /** * Returns the language string of a permission *