summaryrefslogtreecommitdiffstats
path: root/extensions/Review/Extension.pm
diff options
context:
space:
mode:
authorByron Jones <bjones@mozilla.com>2013-08-16 07:15:07 +0200
committerByron Jones <bjones@mozilla.com>2013-08-16 07:15:07 +0200
commit64e818b7f831e2df8bc5638a977b5e34e3e31a1d (patch)
treeeb0ca9df722a6249991fb8432351c1009e781203 /extensions/Review/Extension.pm
parente774df014e62588b9171bc9c3fd6fe54df72071d (diff)
downloadbugzilla-64e818b7f831e2df8bc5638a977b5e34e3e31a1d.tar.gz
bugzilla-64e818b7f831e2df8bc5638a977b5e34e3e31a1d.tar.xz
Bug 905904: List "away" reviewers in reviewer report
Diffstat (limited to 'extensions/Review/Extension.pm')
-rw-r--r--extensions/Review/Extension.pm27
1 files changed, 14 insertions, 13 deletions
diff --git a/extensions/Review/Extension.pm b/extensions/Review/Extension.pm
index ccbb4203e..568a16a30 100644
--- a/extensions/Review/Extension.pm
+++ b/extensions/Review/Extension.pm
@@ -38,18 +38,18 @@ BEGIN {
# reviewers
#
-sub _product_reviewers { _reviewers($_[0], 'product') }
-sub _product_reviewers_objs { _reviewers_objs($_[0], 'product') }
-sub _component_reviewers { _reviewers($_[0], 'component') }
-sub _component_reviewers_objs { _reviewers_objs($_[0], 'component') }
+sub _product_reviewers { _reviewers($_[0], 'product', $_[1]) }
+sub _product_reviewers_objs { _reviewers_objs($_[0], 'product', $_[1]) }
+sub _component_reviewers { _reviewers($_[0], 'component', $_[1]) }
+sub _component_reviewers_objs { _reviewers_objs($_[0], 'component', $_[1]) }
sub _reviewers {
- my ($object, $type) = @_;
- return join(', ', map { $_->login } @{ _reviewers_objs($object, $type) });
+ my ($object, $type, $include_disabled) = @_;
+ return join(', ', map { $_->login } @{ _reviewers_objs($object, $type, $include_disabled) });
}
sub _reviewers_objs {
- my ($object, $type) = @_;
+ my ($object, $type, $include_disabled) = @_;
if (!$object->{reviewers}) {
my $dbh = Bugzilla->dbh;
my $user_ids = $dbh->selectcol_arrayref(
@@ -61,9 +61,10 @@ sub _reviewers_objs {
# so we have to reorder the list
my $users = Bugzilla::User->new_from_list($user_ids);
my %user_map = map { $_->id => $_ } @$users;
- my @reviewers =
- grep { $_->name !~ UNAVAILABLE_RE }
- map { $user_map{$_} } @$user_ids;
+ my @reviewers = map { $user_map{$_} } @$user_ids;
+ if (!$include_disabled) {
+ @reviewers = grep { $_->name !~ UNAVAILABLE_RE } @reviewers;
+ }
$object->{reviewers} = \@reviewers;
}
return $object->{reviewers};
@@ -169,7 +170,7 @@ sub object_end_of_update {
my ($new, $new_users) = _new_reviewers_from_input();
my $old = $old_object->reviewers;
if ($old ne $new) {
- _update_reviewers($object, $old_object->reviewers_objs, $new_users);
+ _update_reviewers($object, $old_object->reviewers_objs(1), $new_users);
$changes->{reviewers} = [ $old ? $old : undef, $new ? $new : undef ];
}
}
@@ -304,14 +305,14 @@ sub page_before_template {
my $product = {
name => $product_obj->name,
components => [],
- reviewers => $product_obj->reviewers_objs,
+ reviewers => $product_obj->reviewers_objs(1),
};
$has_reviewers = scalar @{ $product->{reviewers} };
foreach my $component_obj (@{ $product_obj->components }) {
my $component = {
name => $component_obj->name,
- reviewers => $component_obj->reviewers_objs,
+ reviewers => $component_obj->reviewers_objs(1),
};
if (@{ $component->{reviewers} }) {
push @{ $product->{components} }, $component;