summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2007-07-19 19:26:36 +0200
committerlpsolit%gmail.com <>2007-07-19 19:26:36 +0200
commit33f63df58557de8dbbb7a46eebf19a35e517d24a (patch)
tree75037da8f908bad78b73d52ea3ccd87ed10d18f7
parentd157911436821ae4ed235d7e83c9e38ca71d0604 (diff)
downloadbugzilla-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.pm13
-rw-r--r--template/en/default/pages/quicksearchhack.html.tmpl29
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>&nbsp;</td>
<td><tt>group</tt></td>
<td>&nbsp;</td>
- <td>Group <i>("bug_group")</i></td>
+ <td>Group</td>
+</tr>
+
+<!-- Flags -->
+
+<tr>
+ <td>&nbsp;</td>
+ <td rowspan="2"><i>flag</i><b>?</b><i>requestee</i></td>
+ <td><tt>flag</tt></td>
+ <td>&nbsp;</td>
+ <td>Flag name and status (+, - or ?)</td>
+</tr>
+<tr>
+ <td>&nbsp;</td>
+ <td><tt>requestee</tt></td>
+ <td><tt>req</tt></td>
+ <td>Flag requestee (login)</td>
+</tr>
+<tr>
+ <td>&nbsp;</td>
+ <td>&nbsp;</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>