summaryrefslogtreecommitdiffstats
path: root/request.cgi
diff options
context:
space:
mode:
Diffstat (limited to 'request.cgi')
-rwxr-xr-xrequest.cgi34
1 files changed, 12 insertions, 22 deletions
diff --git a/request.cgi b/request.cgi
index b0f45b1cc..c7705f38d 100755
--- a/request.cgi
+++ b/request.cgi
@@ -27,28 +27,26 @@
# Make it harder for us to do dangerous things in Perl.
use strict;
-# Include the Bugzilla CGI and general utility library.
use lib qw(.);
require "globals.pl";
use Bugzilla;
-# Use Bugzilla's Request module which contains utilities for handling requests.
use Bugzilla::Flag;
use Bugzilla::FlagType;
-
-# use Bugzilla's User module which contains utilities for handling users.
use Bugzilla::User;
-use vars qw($template $vars @legal_product @legal_components %components);
+use vars qw($template $vars);
# Make sure the user is logged in.
-Bugzilla->login();
+my $user = Bugzilla->login();
+my $userid = $user->id;
+
+my $cgi = Bugzilla->cgi;
+
################################################################################
# Main Body Execution
################################################################################
-my $cgi = Bugzilla->cgi;
-
my $fields;
$fields->{'requester'}->{'type'} = 'single';
# If the user doesn't restrict his search to requests from the wind
@@ -116,17 +114,17 @@ sub queue {
LEFT JOIN bug_group_map AS bgmap
ON bgmap.bug_id = bugs.bug_id
AND bgmap.group_id NOT IN (" .
- join(', ', (-1, values(%{Bugzilla->user->groups}))) . ")
+ join(', ', (-1, values(%{$user->groups}))) . ")
LEFT JOIN cc AS ccmap
- ON ccmap.who = $::userid
- AND ccmap.bug_id = bugs.bug_id
+ ON ccmap.who = $userid
+ AND ccmap.bug_id = bugs.bug_id
" .
# Weed out bug the user does not have access to
" WHERE ((bgmap.group_id IS NULL) OR
(ccmap.who IS NOT NULL AND cclist_accessible = 1) OR
- (bugs.reporter = $::userid AND bugs.reporter_accessible = 1) OR
- (bugs.assigned_to = $::userid))";
+ (bugs.reporter = $userid AND bugs.reporter_accessible = 1) OR
+ (bugs.assigned_to = $userid))";
# Non-deleted flags only
$query .= " AND flags.is_active = 1 ";
@@ -279,15 +277,7 @@ sub queue {
SendSQL("SELECT DISTINCT(name) FROM flagtypes ORDER BY name");
push(@types, FetchOneColumn()) while MoreSQLData();
- # products and components and the function used to modify the components
- # menu when the products menu changes; used by the template to populate
- # the menus and keep the components menu consistent with the products menu
- GetVersionTable();
- my $selectable = GetSelectableProductHash();
- $vars->{'products'} = $selectable->{legal_products};
- $vars->{'components'} = $selectable->{legal_components};
- $vars->{'components_by_product'} = $selectable->{components_by_product};
-
+ $vars->{'products'} = $user->get_selectable_products;
$vars->{'excluded_columns'} = \@excluded_columns;
$vars->{'group_field'} = $form_group;
$vars->{'requests'} = \@requests;