' . sprintf($user->lang['RETURN_PAGE'], '', ''));
break;
diff --git a/phpBB/includes/ucp/ucp_pm_compose.php b/phpBB/includes/ucp/ucp_pm_compose.php
index fed72402f2..b5cba63c97 100644
--- a/phpBB/includes/ucp/ucp_pm_compose.php
+++ b/phpBB/includes/ucp/ucp_pm_compose.php
@@ -74,7 +74,7 @@ function compose_pm($id, $mode, $action)
{
$sql = 'SELECT group_id, group_name, group_type
FROM ' . GROUPS_TABLE . '
- WHERE group_type NOT IN (' . GROUP_HIDDEN . ', ' . GROUP_CLOSED . ')
+ WHERE group_type <> ' . GROUP_HIDDEN . '
AND group_receive_pm = 1
ORDER BY group_type DESC';
$result = $db->sql_query($sql);
@@ -730,6 +730,7 @@ function compose_pm($id, $mode, $action)
$sql = 'SELECT group_id as id, group_name as name, group_colour as colour, group_type
FROM ' . GROUPS_TABLE . '
WHERE group_receive_pm = 1
+ AND group_type <> ' . GROUP_HIDDEN . '
AND ' . $db->sql_in_set('group_id', array_map('intval', array_keys($address_list['g'])));
$result['g'] = $db->sql_query($sql);
}
diff --git a/phpBB/index.php b/phpBB/index.php
index 84faea917f..92eda26000 100644
--- a/phpBB/index.php
+++ b/phpBB/index.php
@@ -36,16 +36,27 @@ $l_total_post_s = ($total_posts == 0) ? 'TOTAL_POSTS_ZERO' : 'TOTAL_POSTS_OTHER'
$l_total_topic_s = ($total_topics == 0) ? 'TOTAL_TOPICS_ZERO' : 'TOTAL_TOPICS_OTHER';
// Grab group details for legend display
-$sql = 'SELECT group_id, group_name, group_colour, group_type
- FROM ' . GROUPS_TABLE . '
- WHERE group_legend = 1
- AND group_type <> ' . GROUP_HIDDEN . '
- ORDER BY group_name ASC';
+$sql = 'SELECT g.group_id, g.group_name, g.group_colour, g.group_type, ug.user_id
+ FROM ' . GROUPS_TABLE . ' g
+ LEFT JOIN ' . USER_GROUP_TABLE . ' ug
+ ON (
+ g.group_id = ug.group_id
+ AND g.group_type = ' . GROUP_HIDDEN . '
+ AND ug.user_id = ' . $user->data['user_id'] . '
+ AND ug.user_pending = 0
+ )
+ WHERE g.group_legend = 1
+ ORDER BY g.group_name ASC';
$result = $db->sql_query($sql);
$legend = '';
while ($row = $db->sql_fetchrow($result))
{
+ if ($row['group_type'] == GROUP_HIDDEN && empty($row['user_id']))
+ {
+ continue;
+ }
+
$colour_text = ($row['group_colour']) ? ' style="color:#' . $row['group_colour'] . '"' : '';
if ($row['group_name'] == 'BOTS')
diff --git a/phpBB/install/convertors/convert_phpbb20.php b/phpBB/install/convertors/convert_phpbb20.php
index 1436d4a256..eb04a64bec 100644
--- a/phpBB/install/convertors/convert_phpbb20.php
+++ b/phpBB/install/convertors/convert_phpbb20.php
@@ -158,7 +158,7 @@ if (!$get_info)
}
// TerraFrost's validated birthday mod
- if (get_config_value('bday_required') !== false)
+ if (get_config_value('bday_require') !== false)
{
define('MOD_BIRTHDAY_TERRA', true);
}
diff --git a/phpBB/language/en/acp/groups.php b/phpBB/language/en/acp/groups.php
index f69ac02168..fa49030ccb 100644
--- a/phpBB/language/en/acp/groups.php
+++ b/phpBB/language/en/acp/groups.php
@@ -81,6 +81,7 @@ $lang = array_merge($lang, array(
'GROUP_PROMOTE' => 'Promote to group leader',
'GROUP_RANK' => 'Group rank',
'GROUP_RECEIVE_PM' => 'Group able to receive private messages',
+ 'GROUP_RECEIVE_PM_EXPLAIN' => 'Please note that hidden groups are not able to be messaged, regardless of this setting.',
'GROUP_REQUEST' => 'Request',
'GROUP_SETTINGS' => 'Set user preferences',
'GROUP_SETTINGS_EXPLAIN' => 'Here you can force changes in users current preferences. Please note these settings are not saved for the group itself. They are intended as a quick method of altering the preferences of all users in this group.',
diff --git a/phpBB/language/en/groups.php b/phpBB/language/en/groups.php
index bd11356684..b9aee65871 100644
--- a/phpBB/language/en/groups.php
+++ b/phpBB/language/en/groups.php
@@ -31,10 +31,11 @@ if (empty($lang) || !is_array($lang))
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
$lang = array_merge($lang, array(
- 'ALREADY_DEFAULT_GROUP' => 'The selected group is already your default group',
- 'ALREADY_IN_GROUP' => 'You are already a member of the selected group',
+ 'ALREADY_DEFAULT_GROUP' => 'The selected group is already your default group.',
+ 'ALREADY_IN_GROUP' => 'You are already a member of the selected group.',
+ 'ALREADY_IN_GROUP_PENDING' => 'You already requested joining the selected group.',
- 'CHANGED_DEFAULT_GROUP' => 'Successfully changed default group',
+ 'CHANGED_DEFAULT_GROUP' => 'Successfully changed default group.',
'GROUP_AVATAR' => 'Group avatar',
'GROUP_CHANGE_DEFAULT' => 'Are you sure you want to change your default membership to the group ā%sā?',
diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php
index b8dccf28ad..e1601e9a0d 100644
--- a/phpBB/memberlist.php
+++ b/phpBB/memberlist.php
@@ -202,13 +202,14 @@ switch ($mode)
}
}
- // If the mod is only moderating non-viewable forums let us display this circumstance
- // instead of saying they are moderating all forums
+ // If the mod is only moderating non-viewable forums we skip the user. There is no gain in displaying the person then...
if (!$s_forum_select && $undisclosed_forum)
{
- $s_forum_select = '';
+// $s_forum_select = '';
+ continue;
}
+ // The person is moderating several "public" forums, therefore the person should be listed, but not giving the real group name if hidden.
if ($row['group_type'] == GROUP_HIDDEN && !$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel') && $row['ug_user_id'] != $user->data['user_id'])
{
$group_name = $user->lang['GROUP_UNDISCLOSED'];