diff options
author | lpsolit%gmail.com <> | 2007-07-19 19:26:36 +0200 |
---|---|---|
committer | lpsolit%gmail.com <> | 2007-07-19 19:26:36 +0200 |
commit | 33f63df58557de8dbbb7a46eebf19a35e517d24a (patch) | |
tree | 75037da8f908bad78b73d52ea3ccd87ed10d18f7 | |
parent | d157911436821ae4ed235d7e83c9e38ca71d0604 (diff) | |
download | bugzilla-33f63df58557de8dbbb7a46eebf19a35e517d24a.tar.gz bugzilla-33f63df58557de8dbbb7a46eebf19a35e517d24a.tar.xz |
Bug 329701: Add flag support to QuickSearch - Patch by Teemu Mannermaa <wicked@sci.fi> r/a=LpSolit
-rw-r--r-- | Bugzilla/Search/Quicksearch.pm | 13 | ||||
-rw-r--r-- | template/en/default/pages/quicksearchhack.html.tmpl | 29 |
2 files changed, 41 insertions, 1 deletions
diff --git a/Bugzilla/Search/Quicksearch.pm b/Bugzilla/Search/Quicksearch.pm index dfab63698..e8664005c 100644 --- a/Bugzilla/Search/Quicksearch.pm +++ b/Bugzilla/Search/Quicksearch.pm @@ -79,6 +79,11 @@ use constant MAPPINGS => { "keywords" => "keywords", # no change "kw" => "keywords", "group" => "bug_group", + "flag" => "flagtypes.name", + "requestee" => "requestees.login_name", + "req" => "requestees.login_name", + "setter" => "setters.login_name", + "set" => "setters.login_name", # Attachments "attachment" => "attachments.description", "attachmentdesc" => "attachments.description", @@ -270,6 +275,12 @@ sub quicksearch { # votes:xx ("at least xx votes") addChart('votes', 'greaterthan', $1, $negate); } + elsif ($or_operand =~ /^([^\?]+\?)([^\?]*)$/) { + # Flag and requestee shortcut + addChart('flagtypes.name', 'substring', $1, $negate); + $chart++; $and = $or = 0; # Next chart for boolean AND + addChart('requestees.login_name', 'substring', $2, $negate); + } elsif ($or_operand =~ /^([^:]+):([^:]+)$/) { # generic field1,field2,field3:value1,value2 notation my @fields = split(/,/, $1); @@ -428,6 +439,8 @@ sub splitString { foreach (@parts) { # Remove quotes s/"//g; + # Protect plus signs from becoming a blank + s/\+/%2B/g; } return @parts; diff --git a/template/en/default/pages/quicksearchhack.html.tmpl b/template/en/default/pages/quicksearchhack.html.tmpl index 45b1de07b..87493a576 100644 --- a/template/en/default/pages/quicksearchhack.html.tmpl +++ b/template/en/default/pages/quicksearchhack.html.tmpl @@ -242,7 +242,30 @@ <td> </td> <td><tt>group</tt></td> <td> </td> - <td>Group <i>("bug_group")</i></td> + <td>Group</td> +</tr> + +<!-- Flags --> + +<tr> + <td> </td> + <td rowspan="2"><i>flag</i><b>?</b><i>requestee</i></td> + <td><tt>flag</tt></td> + <td> </td> + <td>Flag name and status (+, - or ?)</td> +</tr> +<tr> + <td> </td> + <td><tt>requestee</tt></td> + <td><tt>req</tt></td> + <td>Flag requestee (login)</td> +</tr> +<tr> + <td> </td> + <td> </td> + <td><tt>setter</tt></td> + <td><tt>set</tt></td> + <td>Flag setter (login)</td> </tr> <!-- Attachments --> @@ -373,6 +396,10 @@ <td><i>[% terms.bugs %] waiting for your help</i></td> </tr> --> +<tr> + <td><i>flag</i><b>?</b><i>requestee</i></td> + <td><b>flag:</b><i>flag?</i> <b>requestee:</b><i>requestee</i></td> +</tr> </table> <p> |