mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-07 08:05:25 +02:00
speed up group deletion and correctly display user parameter if group membership changed in acp -> users -> groups
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9409 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
3e6fbb1c6d
commit
f5467430bd
@ -1847,6 +1847,16 @@ class acp_users
|
|||||||
}
|
}
|
||||||
|
|
||||||
$error = array();
|
$error = array();
|
||||||
|
|
||||||
|
// The delete action was successful - therefore update the user row...
|
||||||
|
$sql = 'SELECT u.*, s.*
|
||||||
|
FROM ' . USERS_TABLE . ' u
|
||||||
|
LEFT JOIN ' . SESSIONS_TABLE . ' s ON (s.session_user_id = u.user_id)
|
||||||
|
WHERE u.user_id = ' . $user_id . '
|
||||||
|
ORDER BY s.session_time DESC';
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
|
$user_row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -2807,13 +2807,14 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
|||||||
$temp_ary = array();
|
$temp_ary = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
if ($default_groups[$row['user_id']] == $group_id && (!isset($temp_ary[$row['user_id']]) || array_search($row['group_name'], $group_order) < $temp_ary[$row['user_id']]))
|
if ($default_groups[$row['user_id']] == $group_id && (!isset($temp_ary[$row['user_id']]) || $group_order_id[$row['group_name']] < $temp_ary[$row['user_id']]))
|
||||||
{
|
{
|
||||||
$temp_ary[$row['user_id']] = $row['group_id'];
|
$temp_ary[$row['user_id']] = $row['group_id'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
|
// sql_where_ary holds the new default groups and their users
|
||||||
$sql_where_ary = array();
|
$sql_where_ary = array();
|
||||||
foreach ($temp_ary as $uid => $gid)
|
foreach ($temp_ary as $uid => $gid)
|
||||||
{
|
{
|
||||||
@ -2825,7 +2826,7 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
|||||||
{
|
{
|
||||||
if (isset($sql_where_ary[$gid]) && sizeof($sql_where_ary[$gid]))
|
if (isset($sql_where_ary[$gid]) && sizeof($sql_where_ary[$gid]))
|
||||||
{
|
{
|
||||||
remove_default_rank($group_id, $sql_where_ary[$gid]);
|
remove_default_rank($gid, $sql_where_ary[$gid]);
|
||||||
remove_default_avatar($group_id, $sql_where_ary[$gid]);
|
remove_default_avatar($group_id, $sql_where_ary[$gid]);
|
||||||
group_set_user_default($gid, $sql_where_ary[$gid], $default_data_ary);
|
group_set_user_default($gid, $sql_where_ary[$gid], $default_data_ary);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user