]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 155389 - More <link> elements & templatization of navigation_links. Patch by...
authorgerv%gerv.net <>
Thu, 3 Oct 2002 14:04:02 +0000 (14:04 +0000)
committergerv%gerv.net <>
Thu, 3 Oct 2002 14:04:02 +0000 (14:04 +0000)
CGI.pl
bug_form.pl
template/en/default/bug/edit.html.tmpl
template/en/default/global/header.html.tmpl
template/en/default/global/site-navigation.html.tmpl [new file with mode: 0644]

diff --git a/CGI.pl b/CGI.pl
index 1e534b384025aa1b5374ca9cd70ff2a7343b2703..6e121b273e0ed33c331dc7ba2ed44f472ab56ce5 100644 (file)
--- 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.
index d087b4db2aafa2819f423be877ce077719e282c5..c664f2de1f4abe7ddca54eacd5c764149c6c4660 100644 (file)
@@ -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());
index ef9ec2d7f89d77d80228110cfb1666a15ca9da1b..15285216952a49fe1f31fa62ddeedab27a65184e 100644 (file)
@@ -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 %]
index 889d63d0b30b827a41dae71f07d72a52ab6b5319..ed133140d00df744899d8f7e82030e1c93a0f8a6 100644 (file)
@@ -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 (file)
index 0000000..6cd5b5c
--- /dev/null
@@ -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 %]