aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <nickvergessen@gmx.de>2012-12-06 16:33:12 +0100
committerJoas Schilling <nickvergessen@gmx.de>2012-12-06 16:33:12 +0100
commit2f490293e4b8d08d6c1008ef5ea324ae259d9993 (patch)
treed250c86a60bafc806fdc07d45b0bd18ffca3bd9e
parent4103c99a8676653a868014a6f58a76e8986bd5ed (diff)
downloadforums-2f490293e4b8d08d6c1008ef5ea324ae259d9993.tar
forums-2f490293e4b8d08d6c1008ef5ea324ae259d9993.tar.gz
forums-2f490293e4b8d08d6c1008ef5ea324ae259d9993.tar.bz2
forums-2f490293e4b8d08d6c1008ef5ea324ae259d9993.tar.xz
forums-2f490293e4b8d08d6c1008ef5ea324ae259d9993.zip
[ticket/10679] Use module_auth to limit access to the module
PHPBB3-10679
-rw-r--r--phpBB/includes/ucp/info/ucp_profile.php2
-rw-r--r--phpBB/install/database_update.php8
-rw-r--r--phpBB/ucp.php6
3 files changed, 9 insertions, 7 deletions
diff --git a/phpBB/includes/ucp/info/ucp_profile.php b/phpBB/includes/ucp/info/ucp_profile.php
index 201216e9fd..3581a7f533 100644
--- a/phpBB/includes/ucp/info/ucp_profile.php
+++ b/phpBB/includes/ucp/info/ucp_profile.php
@@ -19,7 +19,7 @@ class ucp_profile_info
'title' => 'UCP_PROFILE',
'version' => '1.0.0',
'modes' => array(
- 'profile_info' => array('title' => 'UCP_PROFILE_PROFILE_INFO', 'auth' => '', 'cat' => array('UCP_PROFILE')),
+ 'profile_info' => array('title' => 'UCP_PROFILE_PROFILE_INFO', 'auth' => 'acl_u_chgprofileinfo', 'cat' => array('UCP_PROFILE')),
'signature' => array('title' => 'UCP_PROFILE_SIGNATURE', 'auth' => 'acl_u_sig', 'cat' => array('UCP_PROFILE')),
'avatar' => array('title' => 'UCP_PROFILE_AVATAR', 'auth' => 'cfg_allow_avatar && (cfg_allow_avatar_local || cfg_allow_avatar_remote || cfg_allow_avatar_upload || cfg_allow_avatar_remote_upload)', 'cat' => array('UCP_PROFILE')),
'reg_details' => array('title' => 'UCP_PROFILE_REG_DETAILS', 'auth' => '', 'cat' => array('UCP_PROFILE')),
diff --git a/phpBB/install/database_update.php b/phpBB/install/database_update.php
index f0a16844e9..95fd1ca2c2 100644
--- a/phpBB/install/database_update.php
+++ b/phpBB/install/database_update.php
@@ -2830,6 +2830,14 @@ function change_database_data(&$no_updates, $version)
$auth_admin->acl_clear_prefetch();
}
+ // Update the auth setting for the module
+ $sql = 'UPDATE ' . MODULES_TABLE . "
+ SET module_auth = 'acl_u_chgprofileinfo'
+ WHERE module_class = 'ucp'
+ AND module_basename = 'profile'
+ AND module_mode = 'profile_info'";
+ _sql($sql, $errored, $error_ary);
+
$no_updates = false;
break;
diff --git a/phpBB/ucp.php b/phpBB/ucp.php
index 7f4cd94f6f..a7e75f76c4 100644
--- a/phpBB/ucp.php
+++ b/phpBB/ucp.php
@@ -334,12 +334,6 @@ if (!$config['allow_topic_notify'] && !$config['allow_forum_notify'])
$vars = array('module', 'id', 'mode');
extract($phpbb_dispatcher->trigger_event('core.ucp_display_module_before', compact($vars)));
-// Do not display profile information panel if not authed to do so
-if (!$auth->acl_get('u_chgprofileinfo'))
-{
- $module->set_display('profile', 'profile_info', false);
-}
-
// Select the active module
$module->set_active($id, $mode);