summaryrefslogtreecommitdiffstats
path: root/process_bug.cgi
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2007-07-04 05:27:13 +0200
committerlpsolit%gmail.com <>2007-07-04 05:27:13 +0200
commit8ec3f6fca2577c9d5af0a9335fa777236e29d8d7 (patch)
tree29add630896ef18666c07f16e76e119ead08ff30 /process_bug.cgi
parentf8f988fbc1ca1d183dbeb8e1e942706552507e84 (diff)
downloadbugzilla-8ec3f6fca2577c9d5af0a9335fa777236e29d8d7.tar.gz
bugzilla-8ec3f6fca2577c9d5af0a9335fa777236e29d8d7.tar.xz
Bug 385209: Part 2: Only consider */NA and */MANDATORY when the bug is being moved to another product - Patch by Frédéric Buclin <LpSolit@gmail.com> r=mkanat a=LpSolit
Diffstat (limited to 'process_bug.cgi')
-rwxr-xr-xprocess_bug.cgi12
1 files changed, 7 insertions, 5 deletions
diff --git a/process_bug.cgi b/process_bug.cgi
index f2a174dee..4b5d0ec54 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")))
{