diff options
author | justdave%bugzilla.org <> | 2004-07-07 15:02:32 +0200 |
---|---|---|
committer | justdave%bugzilla.org <> | 2004-07-07 15:02:32 +0200 |
commit | cb425931262e9c087a99709ec2a215efeb766311 (patch) | |
tree | 2caa1afc3e3a22fa8613286471e83a532a7c2b41 | |
parent | 301233f8df92dcb3b84c38ebe707716179e1d419 (diff) | |
download | bugzilla-cb425931262e9c087a99709ec2a215efeb766311.tar.gz bugzilla-cb425931262e9c087a99709ec2a215efeb766311.tar.xz |
Bug 245077: The "Find a specific bug" tab is now the default query when you go to query.cgi. To keep the developers happy, a cookie is now set to remember which query page you last visited, and going to query.cgi without specifying which tab will get you the last one you visited.
Patch by Byron Jones <bugzilla@glob.com.au>
r=justdave, a=justdave
-rwxr-xr-x | query.cgi | 25 | ||||
-rw-r--r-- | template/en/default/search/search.html.tmpl | 97 | ||||
-rw-r--r-- | template/en/default/search/tabs.html.tmpl | 10 |
3 files changed, 25 insertions, 107 deletions
@@ -22,6 +22,7 @@ # David Gardiner <david.gardiner@unisa.edu.au> # Matthias Radestock <matthias@sorted.org> # Gervase Markham <gerv@gerv.net> +# Byron Jones <bugzilla@glob.com.au> use strict; use lib "."; @@ -395,16 +396,32 @@ if (($::FORM{'query_format'} || $::FORM{'format'} || "") eq "create-series") { # Add in the defaults. $vars->{'default'} = \%default; -$vars->{'format'} = $::FORM{'format'}; -$vars->{'query_format'} = $::FORM{'query_format'}; +$vars->{'format'} = $cgi->param('format'); +$vars->{'query_format'} = $cgi->param('query_format'); + +# Set default page to "specific" if none proviced +if (!($cgi->param('query_format') || $cgi->param('format'))) { + if (defined $cgi->cookie('DEFAULTFORMAT')) { + $vars->{'format'} = $cgi->cookie('DEFAULTFORMAT'); + } else { + $vars->{'format'} = 'specific'; + } +} + +# Set cookie from format unless it's a report +if ($vars->{'format'} !~ /^report-/i) { + $cgi->send_cookie(-name => 'DEFAULTFORMAT', + -value => $vars->{'format'}, + -expires => "Fri, 01-Jan-2038 00:00:00 GMT"); +} # Generate and return the UI (HTML page) from the appropriate template. # If we submit back to ourselves (for e.g. boolean charts), we need to # preserve format information; hence query_format taking priority over # format. my $format = GetFormat("search/search", - $::FORM{'query_format'} || $::FORM{'format'}, - $::FORM{'ctype'}); + $vars->{'query_format'} || $vars->{'format'}, + $cgi->param('ctype')); print $cgi->header($format->{'ctype'}); diff --git a/template/en/default/search/search.html.tmpl b/template/en/default/search/search.html.tmpl deleted file mode 100644 index bbed6c2d6..000000000 --- a/template/en/default/search/search.html.tmpl +++ /dev/null @@ -1,97 +0,0 @@ -[%# 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): Gervase Markham <gerv@gerv.net> - #%] - -[%# INTERFACE: - # This template has no interface. However, to use it, you need to fulfill - # the interfaces of search/form.html.tmpl, search/knob.html.tmpl and - # search/boolean-charts.html.tmpl. - #%] - -[% PROCESS global/variables.none.tmpl %] - -[% USE Bugzilla %] -[% cgi = Bugzilla.cgi %] - -[% PROCESS global/header.html.tmpl - title = "Search for $terms.bugs" - h1 = "" - onload = "selectProduct(document.forms['queryform']);initHelp();" - style = "td.selected_tab { - border-width: 2px 2px 0px; - border-style: solid; - } - td.unselected_tab, td.spacer { - border-width: 0px 0px 2px 0px; - border-style: solid; - } - dl.bug_changes dt { - margin-top: 15px; - }" -%] - -[% PROCESS search/tabs.html.tmpl %] - -[% button_name = "Search" %] - -[%# The decent help requires Javascript %] -[% IF NOT help %] - [% IF cgi.user_agent("Mozilla/5") %] - <script type="text/javascript"> <!-- - document.write("<p><a href='query.cgi?help=1'>Give me some help</a> (reloads page.)</p>"); - // --> - </script> - <noscript> - <p><a href="queryhelp.cgi">Give me help</a> with this form.</p> - </noscript> - [% ELSE %] - <p><a href="queryhelp.cgi">Give me help</a> with this form.</p> - [% END %] -[% ELSE %] - <p> - For help, mouse over the page elements. - <font color="red"> - [% IF cgi.user_agent("Mozilla/5") %] - Note that if the help popups are hidden by form element scroll bars, - this is a b<!-- word broken up to pass test 009 -->ug in your browser, - not in [% terms.Bugzilla %]. - [% END %] - </font> - </p> -[% END %] -<form method="get" action="buglist.cgi" name="queryform"> - -[% PROCESS search/form.html.tmpl %] - -[% PROCESS search/knob.html.tmpl %] - -<hr> - -[% PROCESS "search/boolean-charts.html.tmpl" %] - -<p> - Give me a <a href="queryhelp.cgi">clue</a> about how to use this form. -</p> - -</form> - -[% PROCESS "search/search-help.html.tmpl" IF help %] - -[% PROCESS global/footer.html.tmpl %] diff --git a/template/en/default/search/tabs.html.tmpl b/template/en/default/search/tabs.html.tmpl index ac3c72f2f..06b22f7a2 100644 --- a/template/en/default/search/tabs.html.tmpl +++ b/template/en/default/search/tabs.html.tmpl @@ -26,10 +26,10 @@ # description: string. Description of the tab (used in tab title). #%] -[% tabs = [ { name => '__DEFAULT__', description => "Advanced Search" }, - { name => 'specific', description => "Find a Specific $terms.Bug " } ] %] +[% tabs = [ { name => 'specific', description => "Find a Specific $terms.Bug " }, + { name => 'advanced', description => "Advanced Search" } ] %] -[% current_tab = query_format || format || "__DEFAULT__" %] +[% current_tab = query_format || format || "advanced" %] <center> <table cellspacing="0" cellpadding="10" border="0" width="100%"> @@ -43,9 +43,7 @@ </td> [% ELSE %] <td align="center" bgcolor="#BBBBEE" class="unselected_tab"> - <a href="query.cgi - [% IF tab.name != "__DEFAULT__" %]?format=[% tab.name %][% END %]" - > + <a href="query.cgi?format=[% tab.name %]" > [% tab.description %] </a> </td> |