summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgerv%gerv.net <>2002-10-03 16:04:02 +0200
committergerv%gerv.net <>2002-10-03 16:04:02 +0200
commitca842229d2d58c85517a8fc8e5a2bc9414752dae (patch)
treeec8cc68d9533b6ca5744a2852c31a57ccae16819
parent7b1731d5ceeb67012942d872ab8d9ebb048b04c1 (diff)
downloadbugzilla-ca842229d2d58c85517a8fc8e5a2bc9414752dae.tar.gz
bugzilla-ca842229d2d58c85517a8fc8e5a2bc9414752dae.tar.xz
Bug 155389 - More <link> elements & templatization of navigation_links. Patch by gerv; r=bbaetz.
-rw-r--r--CGI.pl43
-rw-r--r--bug_form.pl3
-rw-r--r--template/en/default/bug/edit.html.tmpl1
-rw-r--r--template/en/default/global/header.html.tmpl3
-rw-r--r--template/en/default/global/site-navigation.html.tmpl103
5 files changed, 104 insertions, 49 deletions
diff --git a/CGI.pl b/CGI.pl
index 1e534b384..6e121b273 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -308,49 +308,6 @@ sub ValidateComment {
}
}
-# Adds <link> elements for bug lists. These can be inserted into the header by
-# using the "header_html" parameter to PutHeader, which inserts an arbitrary
-# string into the header. This function is currently used only in
-# template/en/default/bug/edit.html.tmpl.
-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 .= "<link rel=\"First\" href=\"show_bug.cgi?id=$bugs[0]\">\n";
- $retval .= "<link rel=\"Prev\" href=\"show_bug.cgi?id=$bugs[$cur - 1]\">\n";
- }
- if ($cur < $#bugs) {
- $retval .= "<link rel=\"Next\" href=\"show_bug.cgi?id=$bugs[$cur + 1]\">\n";
- $retval .= "<link rel=\"Last\" href=\"show_bug.cgi?id=$bugs[$#bugs]\">\n";
- }
-
- $retval .= "<link rel=\"Up\" href=\"buglist.cgi?regetlastlist=1\">\n";
- $retval .= "<link rel=\"Contents\" href=\"buglist.cgi?regetlastlist=1\">\n";
- } else {
- # We are on a bug list
- $retval .= "<link rel=\"First\" href=\"show_bug.cgi?id=$bugs[0]\">\n";
- $retval .= "<link rel=\"Next\" href=\"show_bug.cgi?id=$bugs[0]\">\n";
- $retval .= "<link rel=\"Last\" href=\"show_bug.cgi?id=$bugs[$#bugs]\">\n";
- }
- }
-
- return $retval;
-}
-
$::CheckOptionValues = 1;
# This sub is still used in reports.cgi.
diff --git a/bug_form.pl b/bug_form.pl
index d087b4db2..c664f2de1 100644
--- a/bug_form.pl
+++ b/bug_form.pl
@@ -368,9 +368,6 @@ sub show_bug {
$vars->{'bug'} = \%bug;
$vars->{'user'} = \%user;
- # Create the <link> elements for browsing bug lists
- $vars->{'navigation_links'} = navigation_links(join(':',@bug_list));
-
# Generate and return the UI (HTML page) from the appropriate template.
$template->process("bug/edit.html.tmpl", $vars)
|| ThrowTemplateError($template->error());
diff --git a/template/en/default/bug/edit.html.tmpl b/template/en/default/bug/edit.html.tmpl
index ef9ec2d7f..152852169 100644
--- a/template/en/default/bug/edit.html.tmpl
+++ b/template/en/default/bug/edit.html.tmpl
@@ -27,7 +27,6 @@
h1 = "Bugzilla Bug $bug.bug_id"
h2 = filtered_desc
h3 = "Last modified: $bug.calc_disp_date"
- header_html = navigation_links
style_urls = [ "css/edit_bug.css" ]
%]
[% END %]
diff --git a/template/en/default/global/header.html.tmpl b/template/en/default/global/header.html.tmpl
index 889d63d0b..ed133140d 100644
--- a/template/en/default/global/header.html.tmpl
+++ b/template/en/default/global/header.html.tmpl
@@ -28,7 +28,6 @@
# h3: string. Right-aligned subheader.
# bgcolor: string. the page's background color ("#rrggbb").
# onload: string. JavaScript code to run when the page finishes loading.
- # header_html: string. Any other HTML to go inside the <head> tags.
# javascript: string. Javascript to go in the header.
# style: string. CSS style.
# style_urls: list. List of URLs to CSS style sheets.
@@ -62,7 +61,7 @@
[%# Migration note: contents of the old Param 'headerhtml' would go here %]
- [% header_html %]
+ [% PROCESS "global/site-navigation.html.tmpl" %]
[% IF javascript %]
<script type="text/javascript" language="JavaScript">
diff --git a/template/en/default/global/site-navigation.html.tmpl b/template/en/default/global/site-navigation.html.tmpl
new file mode 100644
index 000000000..6cd5b5c7d
--- /dev/null
+++ b/template/en/default/global/site-navigation.html.tmpl
@@ -0,0 +1,103 @@
+<!-- 1.0@bugzilla.org -->
+[%# The contents of this file are subject to the Mozilla Public
+ # License Version 1.1 (the "License"); you may not use this file
+ # except in compliance with the License. You may obtain a copy of
+ # the License at http://www.mozilla.org/MPL/
+ #
+ # Software distributed under the License is distributed on an "AS
+ # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+ # implied. See the License for the specific language governing
+ # rights and limitations under the License.
+ #
+ # The Original Code is the Bugzilla Bug Tracking System.
+ #
+ # The Initial Developer of the Original Code is Netscape Communications
+ # Corporation. Portions created by Netscape are
+ # Copyright (C) 1998 Netscape Communications Corporation. All
+ # Rights Reserved.
+ #
+ # Contributor(s): Toms Baugis <toms.baugis@tietoenator.com>
+ # Gervase Markham <gerv@gerv.net>
+ #%]
+
+[%# INTERFACE:
+ # bug_list: list of integers. List of bugs numbers of current query (if any).
+ # bug: integer. Number of current bug.
+ #%]
+
+[% IF NOT (user_agent.match("MSIE [1-6]") OR user_agent.match("Mozilla/4")) %]
+ <link rel="Top" href="index.cgi">
+
+ [%# *** Bug List Navigation *** %]
+ [% IF bug && bug_list && bug_list.size > 0 %]
+ <link rel="Up" href="buglist.cgi?regetlastlist=1">
+
+ [% current_bug_idx = lsearch(bug_list, bug.bug_id) %]
+
+ [% IF current_bug_idx > 0 %]
+ <link rel="First" href="show_bug.cgi?id=[% bug_list.first %]">
+ [% 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 %]">
+ <link rel="Last" href="show_bug.cgi?id=[% bug_list.last %]">
+ [% END %]
+ [% END %]
+
+
+ [%# *** Dependencies, Votes, Activity, Print-version *** %]
+ [% IF bug %]
+ <link rel="Show" title="Dependency Tree"
+ href="showdependencytree.cgi?id=[% bug.bug_id %]">
+ <link rel="Show" title="Dependency Graph"
+ href="showdependencygraph.cgi?id=[% bug.bug_id %]">
+
+ [% IF use_votes %]
+ <link rel="Show" title="Votes ([% bug.votes %])"
+ href="votes.cgi?action=show_bug&amp;bug_id=[% bug.bug_id %]">
+ [% END %]
+
+ <link rel="Show" title="Bug Activity"
+ href="show_activity.cgi?id=[% bug.bug_id %]">
+ <link rel="Show" title="Printer-Friendly Version"
+ href="long_list.cgi?buglist=[% bug.bug_id %]">
+ [% END %]
+
+
+ [%# *** Preset Queries *** %]
+ [% IF user.showmybugslink %]
+ [% user.login = user.login FILTER url_quote %]
+ [% substs = { userid => user.login } %]
+ <link rel="Preset&nbsp;Queries" title="My Bugs"
+ href="[% PerformSubsts(Param('mybugstemplate'), substs) %]">
+ [% END %]
+
+ [% FOREACH q = user.queries %]
+ [% IF q.linkinfooter %]
+ <link rel="Preset&nbsp;Queries"
+ title="[% q.name FILTER html %]"
+ href="buglist.cgi?cmdtype=runnamed&amp;namedcmd=[% q.name FILTER url_quote %]">
+ [% END %]
+ [% END %]
+
+ [%# *** Bugzilla Administration Tools *** %]
+ [% IF user.login %]
+ [% '<link rel="Administration" title="Parameters"
+ href="editparams.cgi">' IF user.groups.tweakparams %]
+ [% '<link rel="Administration" title="Users"
+ href="editusers.cgi">' IF user.groups.editusers %]
+ [% '<link rel="Administration" title="Products"
+ href="editproducts.cgi">' IF user.groups.editcomponents %]
+ [% '<link rel="Administration" title="Attachments"
+ href="editattachstatuses.cgi">' IF user.groups.editcomponents %]
+ [% '<link rel="Administration" title="Groups"
+ href="editgroups.cgi">' IF user.groups.creategroups %]
+ [% '<link rel="Administration" title="Keywords"
+ href="editkeywords.cgi">' IF user.groups.editkeywords %]
+ [% '<link rel="Administration" title="Sanity Check"
+ href="sanitycheck.cgi">' IF user.groups.tweakparams %]
+ [% END %]
+[% END %]