Commit bf68d591 authored by mkanat%bugzilla.org's avatar mkanat%bugzilla.org

Bug 509108: Don't require a bug_list parameter to show the bug template (create…

Bug 509108: Don't require a bug_list parameter to show the bug template (create the last_bug_list global template parameter) Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=LpSolit, a=LpSolit
parent 73bb1759
...@@ -756,7 +756,15 @@ sub create { ...@@ -756,7 +756,15 @@ sub create {
# Whether or not keywords are enabled, in this Bugzilla. # Whether or not keywords are enabled, in this Bugzilla.
'use_keywords' => sub { return Bugzilla::Keyword->any_exist; }, 'use_keywords' => sub { return Bugzilla::Keyword->any_exist; },
'last_bug_list' => sub {
my @bug_list;
my $cgi = Bugzilla->cgi;
if ($cgi->cookie("BUGLIST")) {
@bug_list = split(/:/, $cgi->cookie("BUGLIST"));
}
return \@bug_list;
},
# These don't work as normal constants. # These don't work as normal constants.
DB_MODULE => \&Bugzilla::Constants::DB_MODULE, DB_MODULE => \&Bugzilla::Constants::DB_MODULE,
......
...@@ -274,12 +274,6 @@ foreach my $i (@{$bug->dependson || []}, @{$bug->blocked || []}) { ...@@ -274,12 +274,6 @@ foreach my $i (@{$bug->dependson || []}, @{$bug->blocked || []}) {
push (@{$vars->{'sentmail'}}, { type => 'dep', id => $i, }); push (@{$vars->{'sentmail'}}, { type => 'dep', id => $i, });
} }
my @bug_list;
if ($cgi->cookie("BUGLIST")) {
@bug_list = split(/:/, $cgi->cookie("BUGLIST"));
}
$vars->{'bug_list'} = \@bug_list;
if ($token) { if ($token) {
trick_taint($token); trick_taint($token);
$dbh->do('UPDATE tokens SET eventdata = ? WHERE token = ?', undef, $dbh->do('UPDATE tokens SET eventdata = ? WHERE token = ?', undef,
......
...@@ -202,7 +202,6 @@ $vars->{'title_tag'} = "bug_processed"; ...@@ -202,7 +202,6 @@ $vars->{'title_tag'} = "bug_processed";
my @bug_list; my @bug_list;
if ($cgi->cookie("BUGLIST")) { if ($cgi->cookie("BUGLIST")) {
@bug_list = split(/:/, $cgi->cookie("BUGLIST")); @bug_list = split(/:/, $cgi->cookie("BUGLIST"));
$vars->{'bug_list'} = \@bug_list;
} }
my ($action, $next_bug); my ($action, $next_bug);
......
...@@ -103,14 +103,6 @@ $vars->{'marks'} = \%marks; ...@@ -103,14 +103,6 @@ $vars->{'marks'} = \%marks;
my @bugids = map {$_->bug_id} grep {!$_->error} @bugs; my @bugids = map {$_->bug_id} grep {!$_->error} @bugs;
$vars->{'bugids'} = join(", ", @bugids); $vars->{'bugids'} = join(", ", @bugids);
# Next bug in list (if there is one)
my @bug_list;
if ($cgi->cookie("BUGLIST")) {
@bug_list = split(/:/, $cgi->cookie("BUGLIST"));
}
$vars->{'bug_list'} = \@bug_list;
# Work out which fields we are displaying (currently XML only.) # Work out which fields we are displaying (currently XML only.)
# If no explicit list is defined, we show all fields. We then exclude any # If no explicit list is defined, we show all fields. We then exclude any
# on the exclusion list. This is so you can say e.g. "Everything except # on the exclusion list. This is so you can say e.g. "Everything except
......
...@@ -28,8 +28,6 @@ ...@@ -28,8 +28,6 @@
# this contents, see template bug/process/bugmail.html.tmpl # this contents, see template bug/process/bugmail.html.tmpl
# bug: object; Bugzilla::Bug object of the bug that was created (used in # bug: object; Bugzilla::Bug object of the bug that was created (used in
# template bug/edit.html.tmpl # template bug/edit.html.tmpl
# bug_list: array of integers; sorted bug list (used in template
# bug/navigate.html.tmpl)
#%] #%]
[% PROCESS global/variables.none.tmpl %] [% PROCESS global/variables.none.tmpl %]
......
...@@ -36,30 +36,32 @@ ...@@ -36,30 +36,32 @@
<div class="navigation"> <div class="navigation">
[% IF bug_list && bug_list.size > 0 %] [% IF last_bug_list.size > 0 %]
[% this_bug_idx = lsearch(bug_list, bug.bug_id) %] [% this_bug_idx = lsearch(last_bug_list, bug.id) %]
<b>[% terms.Bug %] List:</b> <b>[% terms.Bug %] List:</b>
[% IF this_bug_idx != -1 %] [% IF this_bug_idx != -1 %]
([% this_bug_idx + 1 %] of [% bug_list.size %]) ([% this_bug_idx + 1 %] of [% last_bug_list.size %])
[% END %] [% END %]
[% IF this_bug_idx != -1 %] [% IF this_bug_idx != -1 %]
<a href="show_bug.cgi?id=[% bug_list.first %]">First</a> <a href="show_bug.cgi?id=[% last_bug_list.first FILTER url_quote %]">First</a>
<a href="show_bug.cgi?id=[% bug_list.last %]">Last</a> <a href="show_bug.cgi?id=[% last_bug_list.last FILTER url_quote %]">Last</a>
[% END %] [% END %]
[% IF bug.bug_id %] [% IF bug.bug_id %]
[% IF this_bug_idx != -1 %] [% IF this_bug_idx != -1 %]
[% IF this_bug_idx > 0 %] [% IF this_bug_idx > 0 %]
[% prev_bug = this_bug_idx - 1 %] [% prev_bug = this_bug_idx - 1 %]
<a href="show_bug.cgi?id=[% bug_list.$prev_bug %]">Prev</a> <a href="show_bug.cgi?id=
[%- last_bug_list.$prev_bug FILTER url_quote %]">Prev</a>
[% ELSE %] [% ELSE %]
<i><font color="#777777">Prev</font></i> <i><font color="#777777">Prev</font></i>
[% END %] [% END %]
[% IF this_bug_idx + 1 < bug_list.size %] [% IF this_bug_idx + 1 < last_bug_list.size %]
[% next_bug = this_bug_idx + 1 %] [% next_bug = this_bug_idx + 1 %]
<a href="show_bug.cgi?id=[% bug_list.$next_bug %]">Next</a> <a href="show_bug.cgi?id=
[%- last_bug_list.$next_bug FILTER url_quote %]">Next</a>
[% ELSE %] [% ELSE %]
<i><font color="#777777">Next</font></i> <i><font color="#777777">Next</font></i>
[% END %] [% END %]
...@@ -72,7 +74,6 @@ ...@@ -72,7 +74,6 @@
&nbsp;&nbsp;<a href="buglist.cgi?regetlastlist=1">Show last search results</a> &nbsp;&nbsp;<a href="buglist.cgi?regetlastlist=1">Show last search results</a>
[% ELSE %] [% ELSE %]
[%# Either !bug_list || bug_list.size <= 0 %]
[%# With no list, don't show link to search results %] [%# With no list, don't show link to search results %]
<i><font color="#777777">First</font></i> <i><font color="#777777">First</font></i>
<i><font color="#777777">Last</font></i> <i><font color="#777777">Last</font></i>
......
...@@ -250,10 +250,6 @@ ...@@ -250,10 +250,6 @@
], ],
'global/site-navigation.html.tmpl' => [ 'global/site-navigation.html.tmpl' => [
'bug_list.first',
'bug_list.$prev_bug',
'bug_list.$next_bug',
'bug_list.last',
'bug.bug_id', 'bug.bug_id',
'bug.votes', 'bug.votes',
], ],
...@@ -300,13 +296,6 @@ ...@@ -300,13 +296,6 @@
'" spellcheck=\"$spellcheck\"" IF spellcheck', '" spellcheck=\"$spellcheck\"" IF spellcheck',
], ],
'bug/navigate.html.tmpl' => [
'bug_list.first',
'bug_list.last',
'bug_list.$prev_bug',
'bug_list.$next_bug',
],
'bug/show-multiple.html.tmpl' => [ 'bug/show-multiple.html.tmpl' => [
'attachment.id', 'attachment.id',
'flag.status', 'flag.status',
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
#%] #%]
[%# INTERFACE: [%# INTERFACE:
# bug_list: list of integers. List of bug numbers of current query (if any).
# bug.bug_id: integer. Number of current bug (for navigation purposes) # bug.bug_id: integer. Number of current bug (for navigation purposes)
#%] #%]
...@@ -32,31 +31,6 @@ ...@@ -32,31 +31,6 @@
[% IF NOT (cgi.user_agent("MSIE [1-6]") OR cgi.user_agent("Mozilla/4")) %] [% IF NOT (cgi.user_agent("MSIE [1-6]") OR cgi.user_agent("Mozilla/4")) %]
<link rel="Top" href="[% urlbase FILTER html %]"> <link rel="Top" href="[% urlbase FILTER html %]">
[%# *** Bug List Navigation *** %]
[% IF bug_list && bug_list.size > 0 %]
<link rel="Up" href="buglist.cgi?regetlastlist=1">
<link rel="First" href="show_bug.cgi?id=[% bug_list.first %]">
<link rel="Last" href="show_bug.cgi?id=[% bug_list.last %]">
[% IF bug && bug.bug_id %]
[% current_bug_idx = lsearch(bug_list, bug.bug_id) %]
[% IF current_bug_idx != -1 %]
[% IF current_bug_idx > 0 %]
[% prev_bug = current_bug_idx - 1 %]
<link rel="Prev" href="show_bug.cgi?id=[% bug_list.$prev_bug %]">
[% END %]
[% IF current_bug_idx + 1 < bug_list.size %]
[% next_bug = current_bug_idx + 1 %]
<link rel="Next" href="show_bug.cgi?id=[% bug_list.$next_bug %]">
[% END %]
[% END %]
[% END %]
[% END %]
[%# *** Attachment *** %] [%# *** Attachment *** %]
[% IF attachment && attachment.bug_id %] [% IF attachment && attachment.bug_id %]
<link rel="Up" href="show_bug.cgi?id=[% attachment.bug_id FILTER none %]"> <link rel="Up" href="show_bug.cgi?id=[% attachment.bug_id FILTER none %]">
......
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