From: lpsolit%gmail.com <> Date: Wed, 4 Jul 2007 03:27:13 +0000 (+0000) Subject: Bug 385209: Part 2: Only consider */NA and */MANDATORY when the bug is being moved... X-Git-Tag: bugzilla-3.1.2~169 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8ec3f6fca2577c9d5af0a9335fa777236e29d8d7;p=thirdparty%2Fbugzilla.git Bug 385209: Part 2: Only consider */NA and */MANDATORY when the bug is being moved to another product - Patch by Frédéric Buclin r=mkanat a=LpSolit --- diff --git a/process_bug.cgi b/process_bug.cgi index f2a174dee3..4b5d0ec543 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -1358,21 +1358,23 @@ foreach my $id (@idlist) { # Leave inactive groups alone. next unless $group->{group}->is_active; + # Only members of a group can add/remove the bug to/from it, + # unless the bug is being moved to another product in which case + # non-members can also edit group restrictions. if ($group->{membercontrol} == CONTROLMAPMANDATORY - || ($group->{othercontrol} == CONTROLMAPMANDATORY && !$user->in_group_id($gid))) + || ($product_change && $group->{othercontrol} == CONTROLMAPMANDATORY + && !$user->in_group_id($gid))) { $updated_groups{$gid} = $group->{group}->name; } elsif ($group->{membercontrol} == CONTROLMAPNA - || ($group->{othercontrol} == CONTROLMAPNA && !$user->in_group_id($gid))) + || ($product_change && $group->{othercontrol} == CONTROLMAPNA + && !$user->in_group_id($gid))) { delete $updated_groups{$gid}; } # When editing several bugs at once, only consider groups which # have been displayed. - # Only members of a group can add/remove the bug to/from it, - # unless the bug is being moved to another product in which case - # non-members can also edit group restrictions. elsif (($user->in_group_id($gid) || $product_change) && (defined $cgi->param('id') || defined $cgi->param("bit-$gid"))) {