Commit d04cb258 authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 339679: describecomponents.cgi doesn't show components of closed products,…

Bug 339679: describecomponents.cgi doesn't show components of closed products, even when there are bugs in these products - Patch by Fré©ric Buclin <LpSolit@gmail.com> r=ghendricks a=LpSolit
parent 8eed4a2c
......@@ -777,6 +777,12 @@ sub get_enterable_products {
return $self->{enterable_products};
}
sub can_access_product {
my ($self, $product_name) = @_;
return scalar(grep {$_->name eq $product_name} @{$self->get_accessible_products});
}
sub get_accessible_products {
my $self = shift;
......@@ -2003,6 +2009,20 @@ method should be called in such a case to force reresolution of these groups.
Returns: an array of product objects.
=item C<can_access_product(product_name)>
Returns 1 if the user can search or enter bugs into the specified product,
and 0 if the user should not be aware of the existence of the product.
=item C<get_accessible_products>
Description: Returns an array of product objects the user can search
or enter bugs against.
Params: none
Returns: an array of product objects.
=item C<check_can_admin_product($product_name)>
Description: Checks whether the user is allowed to administrate the product.
......
......@@ -44,7 +44,7 @@ Bugzilla->switch_to_shadow_db;
my $product_name = trim($cgi->param('product') || '');
my $product = new Bugzilla::Product({'name' => $product_name});
unless ($product && $user->can_enter_product($product->name)) {
unless ($product && $user->can_access_product($product->name)) {
# Products which the user is allowed to see.
my @products = @{$user->get_enterable_products};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment