#13961 - the fix is not perfect, we now nuke the avatar/rank when leaving a group - no matter what.

git-svn-id: file:///svn/phpbb/trunk@8005 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
Henry Sudhof 2007-08-04 13:53:19 +00:00
parent 92b02006fe
commit 5d5df25f75
2 changed files with 4 additions and 3 deletions

View file

@ -202,6 +202,7 @@ p a {
<li>[Fix] Properly display ban reason if selecting banned entries within the ACP (Bug #13896)</li>
<li>[Fix] Properly parse SQL expressions for Oracle (Bug #13916)</li>
<li>[Fix] Added label bindings to the custom profile fields in the ACP (Bug #13936) - patch provided by damnian</li>
<li>[Fix] Always remove avatars/ranks when leaving a group. (Bug 13961)</li>
</ul>

View file

@ -2710,7 +2710,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]))
{
group_set_user_default($gid, $sql_where_ary[$gid], $special_group_data[$gid]);
group_set_user_default($gid, $sql_where_ary[$gid], $special_group_data[$gid], false, true);
}
}
unset($special_group_data);
@ -2892,7 +2892,7 @@ function group_validate_groupname($group_id, $group_name)
*
* @private
*/
function group_set_user_default($group_id, $user_id_ary, $group_attributes = false, $update_listing = false, $same_group = false)
function group_set_user_default($group_id, $user_id_ary, $group_attributes = false, $update_listing = false, $overwrite = false)
{
global $db;
@ -2930,7 +2930,7 @@ function group_set_user_default($group_id, $user_id_ary, $group_attributes = fal
if (isset($group_attributes[$attribute]))
{
// If we are about to set an avatar or rank, we will not overwrite with empty, unless we are not actually changing the default group
if (!$same_group && (strpos($attribute, 'group_avatar') === 0 || strpos($attribute, 'group_rank') === 0) && !$group_attributes[$attribute])
if (!$overwrite && (strpos($attribute, 'group_avatar') === 0 || strpos($attribute, 'group_rank') === 0) && !$group_attributes[$attribute])
{
continue;
}