REGRESSION (r243153): [iOS] TestWebKitAPI.FocusPreservationTests.ChangingFocusedNodeR...
[WebKit-https.git] / Websites / bugs.webkit.org / index.cgi
1 #!/usr/bin/perl -T
2 # This Source Code Form is subject to the terms of the Mozilla Public
3 # License, v. 2.0. If a copy of the MPL was not distributed with this
4 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 #
6 # This Source Code Form is "Incompatible With Secondary Licenses", as
7 # defined by the Mozilla Public License, v. 2.0.
8
9 use 5.10.1;
10 use strict;
11 use warnings;
12
13 use lib qw(. lib);
14
15 use Bugzilla;
16 use Bugzilla::Constants;
17 use Bugzilla::Error;
18 use Bugzilla::Update;
19
20 # Check whether or not the user is logged in
21 my $user = Bugzilla->login(LOGIN_OPTIONAL);
22 my $cgi = Bugzilla->cgi;
23 my $template = Bugzilla->template;
24 my $vars = {};
25
26 # And log out the user if requested. We do this first so that nothing
27 # else accidentally relies on the current login.
28 if ($cgi->param('logout')) {
29     Bugzilla->logout();
30     $user = Bugzilla->user;
31     $vars->{'message'} = "logged_out";
32     # Make sure that templates or other code doesn't get confused about this.
33     $cgi->delete('logout');
34 }
35
36 # Return the appropriate HTTP response headers.
37 print $cgi->header();
38
39 if ($user->in_group('admin')) {
40     # If 'urlbase' is not set, display the Welcome page.
41     unless (Bugzilla->params->{'urlbase'}) {
42         $template->process('welcome-admin.html.tmpl')
43           || ThrowTemplateError($template->error());
44         exit;
45     }
46     # Inform the administrator about new releases, if any.
47     $vars->{'release'} = Bugzilla::Update::get_notifications();
48 }
49
50 if ($user->id) {
51     my $dbh = Bugzilla->dbh;
52     $vars->{assignee_count} =
53       $dbh->selectrow_array("SELECT COUNT(*) FROM bugs WHERE assigned_to = ?
54                              AND resolution = ''", undef, $user->id);
55     $vars->{reporter_count} =
56       $dbh->selectrow_array("SELECT COUNT(*) FROM bugs WHERE reporter = ?
57                              AND resolution = ''", undef, $user->id);
58     $vars->{requestee_count} =
59       $dbh->selectrow_array('SELECT COUNT(DISTINCT bug_id) FROM flags
60                              WHERE requestee_id = ?', undef, $user->id);
61 }
62
63 # Generate and return the UI (HTML page) from the appropriate template.
64 $template->process("index.html.tmpl", $vars)
65   || ThrowTemplateError($template->error());