diff options
author | terry%mozilla.org <> | 2000-01-25 11:50:35 +0100 |
---|---|---|
committer | terry%mozilla.org <> | 2000-01-25 11:50:35 +0100 |
commit | 5fc31978bdcfe2790ee48d930d1c2adafe66b204 (patch) | |
tree | 1ae545317ee6f60ada0cf71a9cacf25b0dbc7092 | |
parent | 2061c6577e975bd0471718b7effc42e7f91ada7e (diff) | |
download | bugzilla-5fc31978bdcfe2790ee48d930d1c2adafe66b204.tar.gz bugzilla-5fc31978bdcfe2790ee48d930d1c2adafe66b204.tar.xz |
Added a way to query by bug numbers. Added an "edit this query" link
when you view a buglist.
-rwxr-xr-x | buglist.cgi | 33 | ||||
-rwxr-xr-x | query.cgi | 30 |
2 files changed, 55 insertions, 8 deletions
diff --git a/buglist.cgi b/buglist.cgi index 1c3fffc68..f096bd323 100755 --- a/buglist.cgi +++ b/buglist.cgi @@ -297,6 +297,8 @@ query. You will have to start over at the <A HREF="query.cgi">query page</A>. if (!$::FORM{'order'}) { $::FORM{'order'} = 'reuse last sort'; } + $::buffer = "bug_id=" . $::FORM{'bug_id'} . "&order=" . + url_quote($::FORM{'order'}); } if ((defined $::FORM{'emailcc1'} && $::FORM{'emailcc1'}) || @@ -311,10 +313,24 @@ if ((defined $::FORM{'emailcc1'} && $::FORM{'emailcc1'}) || my $needlongdescs = 0; # Whether we need to patch in the longdescs # table. + +if ($::MFORM{'bug_id'}) { + my @list = grep(!/^$/, split(/[^0-9]+/, join(',', @{$::MFORM{'bug_id'}}))); + if (@list) { + my $verb = "IN"; + if ($::FORM{'bugidtype'} && $::FORM{'bugidtype'} eq 'exclude') { + $verb = "NOT IN"; + } + $query .= " AND bugs.bug_id $verb (" . join(',', @list) . ") "; + } +} + + + if (defined $::FORM{'sql'}) { $query .= "and (\n$::FORM{'sql'}\n)" } else { - my @legal_fields = ("bug_id", "product", "version", "rep_platform", "op_sys", + my @legal_fields = ("product", "version", "rep_platform", "op_sys", "bug_status", "resolution", "priority", "bug_severity", "assigned_to", "reporter", "component", "target_milestone", "groupset"); @@ -1055,13 +1071,18 @@ if ($count > 0) { print "<FORM METHOD=POST ACTION=\"long_list.cgi\"> <INPUT TYPE=HIDDEN NAME=buglist VALUE=$buglist> <INPUT TYPE=SUBMIT VALUE=\"Long Format\"> -<A HREF=\"query.cgi\">Query Page</A> - <A HREF=\"enter_bug.cgi\">Enter New Bug</A> - <A HREF=\"colchange.cgi?$::buffer\">Change columns</A>"; +<NOBR><A HREF=\"query.cgi\">Query Page</A></NOBR> + +<NOBR><A HREF=\"enter_bug.cgi\">Enter New Bug</A></NOBR> + +<NOBR><A HREF=\"colchange.cgi?$::buffer\">Change columns</A></NOBR>"; if (!$dotweak && $count > 1) { - print " <A HREF=\"buglist.cgi?$fields$orderpart&tweak=1\">"; - print "Change several bugs at once</A>\n"; + print " \n"; + print "<NOBR><A HREF=\"buglist.cgi?$fields$orderpart&tweak=1\">"; + print "Change several bugs at once</A></NOBR>\n"; } + print qq{ \n}; + print qq{<NOBR><A HREF="query.cgi?$::buffer">Edit this query</A></NOBR>\n}; print "</FORM>\n"; } PutFooter(); @@ -136,7 +136,8 @@ sub ProcessFormStuff { "changedin", "votes", "short_desc", "short_desc_type", "long_desc", "long_desc_type", "bug_file_loc", "bug_file_loc_type", "status_whiteboard", - "status_whiteboard_type", "keywords") { + "status_whiteboard_type", "keywords", "bug_id", + "bugidtype") { $default{$name} = ""; $type{$name} = 0; } @@ -489,7 +490,32 @@ print " $emailinput1<p> </td></tr><tr><td colspan=2> $emailinput2<p> -</td></tr> +</td></tr>"; + +my $inclselected = "SELECTED"; +my $exclselected = ""; + + +if ($default{'bugidtype'} eq "exclude") { + $inclselected = ""; + $exclselected = "SELECTED"; +} +my $bug_id = value_quote($default{'bug_id'}); + +print qq{ +<TR> +<TD COLSPAN="3"> +<SELECT NAME="bugidtype"> +<OPTION VALUE="include" $inclselected>Only +<OPTION VALUE="exclude" $exclselected>Exclude +</SELECT> +bugs numbered: +<INPUT TYPE="text" NAME="bug_id" VALUE="$bug_id" SIZE=30> +</TD> +</TR> +}; + +print " <tr> <td> Changed in the <NOBR>last <INPUT NAME=changedin SIZE=2 VALUE=\"$default{'changedin'}\"> days.</NOBR> |