git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@8634 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Henry Sudhof 2008-06-09 13:05:34 +00:00
parent 6f7dbcde88
commit bd95c0dfa7
4 changed files with 40 additions and 16 deletions

View file

@ -118,6 +118,7 @@
<li>[Fix] Delete drafts and bookmarks when deleting an user. (#27585, thanks Schumi for the fix)</li> <li>[Fix] Delete drafts and bookmarks when deleting an user. (#27585, thanks Schumi for the fix)</li>
<li>[Fix] Set last_post_subject for new topics. (#23945)</li> <li>[Fix] Set last_post_subject for new topics. (#23945)</li>
<li>[Fix] Allow moving posts to invisible forums. (#27325)</li> <li>[Fix] Allow moving posts to invisible forums. (#27325)</li>
<li>[Fix] Don't allow promoting unapproved group members (#16124)</li>
</ul> </ul>
<a name="v300"></a><h3>1.ii. Changes since 3.0.0</h3> <a name="v300"></a><h3>1.ii. Changes since 3.0.0</h3>

View file

@ -87,8 +87,10 @@ class acp_groups
// Approve, demote or promote // Approve, demote or promote
$group_name = ($group_row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row['group_name']] : $group_row['group_name']; $group_name = ($group_row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row['group_name']] : $group_row['group_name'];
group_user_attributes($action, $group_id, $mark_ary, false, $group_name); $error = group_user_attributes($action, $group_id, $mark_ary, false, $group_name);
if (!$error)
{
switch ($action) switch ($action)
{ {
case 'demote': case 'demote':
@ -105,6 +107,12 @@ class acp_groups
} }
trigger_error($user->lang[$message] . adm_back_link($this->u_action . '&amp;action=list&amp;g=' . $group_id)); trigger_error($user->lang[$message] . adm_back_link($this->u_action . '&amp;action=list&amp;g=' . $group_id));
}
else
{
trigger_error($user->lang[$error] . adm_back_link($this->u_action . '&amp;action=list&amp;g=' . $group_id), E_USER_WARNING);
}
break; break;
case 'default': case 'default':

View file

@ -2911,7 +2911,7 @@ function group_user_attributes($action, $group_id, $user_id_ary = false, $userna
if (!sizeof($user_id_ary) || $result !== false) if (!sizeof($user_id_ary) || $result !== false)
{ {
return false; return 'NO_USERS';
} }
if (!$group_name) if (!$group_name)
@ -2923,9 +2923,23 @@ function group_user_attributes($action, $group_id, $user_id_ary = false, $userna
{ {
case 'demote': case 'demote':
case 'promote': case 'promote':
$sql = 'SELECT user_id FROM ' . USER_GROUP_TABLE . "
WHERE group_id = $group_id
AND user_pending = 1
AND " . $db->sql_in_set('user_id', $user_id_ary);
$result = $db->sql_query_limit($sql, 1);
$not_empty = ($db->sql_fetchrow($result));
$db->sql_freeresult($result);
if ($not_empty)
{
return 'NO_VALID_USERS';
}
$sql = 'UPDATE ' . USER_GROUP_TABLE . ' $sql = 'UPDATE ' . USER_GROUP_TABLE . '
SET group_leader = ' . (($action == 'promote') ? 1 : 0) . " SET group_leader = ' . (($action == 'promote') ? 1 : 0) . "
WHERE group_id = $group_id WHERE group_id = $group_id
AND user_pending = 0
AND " . $db->sql_in_set('user_id', $user_id_ary); AND " . $db->sql_in_set('user_id', $user_id_ary);
$db->sql_query($sql); $db->sql_query($sql);
@ -3019,7 +3033,7 @@ function group_user_attributes($action, $group_id, $user_id_ary = false, $userna
group_update_listings($group_id); group_update_listings($group_id);
return true; return false;
} }
/** /**

View file

@ -108,6 +108,7 @@ $lang = array_merge($lang, array(
'NO_PERMISSIONS' => 'Do not copy permissions', 'NO_PERMISSIONS' => 'Do not copy permissions',
'NO_USERS' => 'You havent entered any users.', 'NO_USERS' => 'You havent entered any users.',
'NO_USERS_ADDED' => 'No users were added to the group.', 'NO_USERS_ADDED' => 'No users were added to the group.',
'NO_VALID_USERS' => 'You havent entered any users eligible for that action.',
'SPECIAL_GROUPS' => 'Pre-defined groups', 'SPECIAL_GROUPS' => 'Pre-defined groups',
'SPECIAL_GROUPS_EXPLAIN' => 'Pre-defined groups are special groups, they cannot be deleted or directly modified. However you can still add users and alter basic settings.', 'SPECIAL_GROUPS_EXPLAIN' => 'Pre-defined groups are special groups, they cannot be deleted or directly modified. However you can still add users and alter basic settings.',