From a0951fc965aafba2c182d761bc0636ddbd324cf2 Mon Sep 17 00:00:00 2001 From: "gerv%gerv.net" <> Date: Tue, 11 Sep 2001 04:26:05 +0000 Subject: Make Bugzilla support tag for buglists. Bug 87818. r=jake, caillon. --- CGI.pl | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'CGI.pl') diff --git a/CGI.pl b/CGI.pl index 3c0795d44..7fb0298d8 100644 --- a/CGI.pl +++ b/CGI.pl @@ -22,6 +22,7 @@ # Joe Robins # Dave Miller # Christopher Aillon +# Gervase Markham # Contains some global routines used throughout the CGI scripts of Bugzilla. @@ -408,6 +409,48 @@ sub navigation_header { print "     Enter new bug\n" } +# Adds elements for bug lists. These can be inserted into the header by +# (ab)using the "jscript" parameter to PutHeader, which inserts an arbitrary +# string into the header. This function is modelled on the one above. +sub navigation_links($) { + my ($buglist) = @_; + + my $retval = ""; + + # We need to be able to pass in a buglist because when you sort on a column + # the bugs in the cookie you are given will still be in the old order. + # If a buglist isn't passed, we just use the cookie. + $buglist ||= $::COOKIE{"BUGLIST"}; + + if (defined $buglist && $buglist ne "") { + my @bugs = split(/:/, $buglist); + + if (defined $::FORM{'id'}) { + # We are on an individual bug + my $cur = lsearch(\@bugs, $::FORM{"id"}); + + if ($cur > 0) { + $retval .= "\n"; + $retval .= "\n"; + } + if ($cur < $#bugs) { + $retval .= "\n"; + $retval .= "\n"; + } + + $retval .= "\n"; + $retval .= "\n"; + } else { + # We are on a bug list + $retval .= "\n"; + $retval .= "\n"; + $retval .= "\n"; + } + } + + return $retval; +} + sub make_checkboxes { my ($src,$default,$isregexp,$name) = (@_); my $last = ""; -- cgit v1.2.3-24-g4f1b