summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbbaetz%acm.org <>2003-02-23 16:31:07 +0100
committerbbaetz%acm.org <>2003-02-23 16:31:07 +0100
commitc0266d1fcdc15f5ccfb5890492a42f4ea598437b (patch)
tree3302ae6af039953c20ece548fad40742572774cd
parent9fc47ebee67937f2b309494457784d6ee8db9cfd (diff)
downloadbugzilla-c0266d1fcdc15f5ccfb5890492a42f4ea598437b.tar.gz
bugzilla-c0266d1fcdc15f5ccfb5890492a42f4ea598437b.tar.xz
Bug 194394 - Internal error after turning useqacontact off
r,a=justdave
-rwxr-xr-xBug.pm10
-rwxr-xr-xBugzilla/Bug.pm10
-rw-r--r--globals.pl2
-rwxr-xr-xprocess_bug.cgi2
4 files changed, 18 insertions, 6 deletions
diff --git a/Bug.pm b/Bug.pm
index 14876dbe3..b451190e2 100755
--- a/Bug.pm
+++ b/Bug.pm
@@ -50,9 +50,13 @@ sub fields {
bug_file_loc status_whiteboard keywords
priority bug_severity target_milestone
dependson blocked votes
- reporter assigned_to qa_contact cc
+ reporter assigned_to cc
);
+ if (Param('useqacontact')) {
+ push @fields, "qa_contact";
+ }
+
if (Param('timetrackinggroup')) {
push @fields, qw(estimated_time remaining_time actual_time);
}
@@ -182,6 +186,8 @@ sub initBug {
if (Param('useqacontact') && $self->{'qa_contact'} > 0) {
$self->{'qa_contact'} = new Bugzilla::User($self->{'qa_contact'});
+ } else {
+ $self->{'qa_contact'} = undef;
}
my $ccSet = new RelationSet;
@@ -376,7 +382,7 @@ sub user {
# and actually try to make the change.
$self->{'user'}->{'canedit'} = $::userid == 0
|| $::userid == $self->{'reporter'}{'id'}
- || ($self->{'qa_contact'} && $::userid == $self->{'qa_contact'}{'id'})
+ || (Param('useqacontact') && $self->{'qa_contact'} && $::userid == $self->{'qa_contact'}{'id'})
|| $::userid == $self->{'assigned_to'}{'id'}
|| &::UserInGroup("editbugs");
$self->{'user'}->{'canconfirm'} = $::userid == 0
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index 14876dbe3..b451190e2 100755
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -50,9 +50,13 @@ sub fields {
bug_file_loc status_whiteboard keywords
priority bug_severity target_milestone
dependson blocked votes
- reporter assigned_to qa_contact cc
+ reporter assigned_to cc
);
+ if (Param('useqacontact')) {
+ push @fields, "qa_contact";
+ }
+
if (Param('timetrackinggroup')) {
push @fields, qw(estimated_time remaining_time actual_time);
}
@@ -182,6 +186,8 @@ sub initBug {
if (Param('useqacontact') && $self->{'qa_contact'} > 0) {
$self->{'qa_contact'} = new Bugzilla::User($self->{'qa_contact'});
+ } else {
+ $self->{'qa_contact'} = undef;
}
my $ccSet = new RelationSet;
@@ -376,7 +382,7 @@ sub user {
# and actually try to make the change.
$self->{'user'}->{'canedit'} = $::userid == 0
|| $::userid == $self->{'reporter'}{'id'}
- || ($self->{'qa_contact'} && $::userid == $self->{'qa_contact'}{'id'})
+ || (Param('useqacontact') && $self->{'qa_contact'} && $::userid == $self->{'qa_contact'}{'id'})
|| $::userid == $self->{'assigned_to'}{'id'}
|| &::UserInGroup("editbugs");
$self->{'user'}->{'canconfirm'} = $::userid == 0
diff --git a/globals.pl b/globals.pl
index 62fc1d633..812fdff15 100644
--- a/globals.pl
+++ b/globals.pl
@@ -661,7 +661,7 @@ sub CanSeeBug {
|| (($userid > 0) &&
(
($assigned_to == $userid)
- || ($qa_contact == $userid)
+ || (Param('useqacontact') && $qa_contact == $userid)
|| (($reporter == $userid) && $rep_access)
|| ($found_cc && $cc_access)
|| ($found_groups == $found_members)
diff --git a/process_bug.cgi b/process_bug.cgi
index 6f0d64175..94c74fcf5 100755
--- a/process_bug.cgi
+++ b/process_bug.cgi
@@ -410,7 +410,7 @@ sub CheckCanChangeField {
}
# Allow the QA contact to change anything.
- if ($qacontactid eq $whoid) {
+ if (Param('useqacontact') && ($qacontactid eq $whoid)) {
return 1;
}