From 4d039a4c95039c5ffa19ff7bcc23777a33d7b912 Mon Sep 17 00:00:00 2001 From: "bugreport%peshkin.net" Date: Thu, 29 Jul 2004 00:46:57 +0000 Subject: [PATCH] Bug 204903: Enable searches to match NULL aliases, missing qa_contact, and search on CC even when cc-list is empty r=jouni a=myk git-svn-id: svn://10.0.0.236/trunk@160009 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/webtools/bugzilla/Bugzilla/Search.pm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/mozilla/webtools/bugzilla/Bugzilla/Search.pm b/mozilla/webtools/bugzilla/Bugzilla/Search.pm index 49f32fdf8fb..00b213d5477 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/Search.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/Search.pm @@ -344,7 +344,7 @@ sub init { "^qa_contact," => sub { push(@supptables, "LEFT JOIN profiles map_qa_contact ON bugs.qa_contact = map_qa_contact.userid"); - $f = "map_$f.login_name"; + $f = "COALESCE(map_$f.login_name,'')"; }, "^cc,(?:equals|anyexact),(%\\w+%)" => sub { @@ -399,8 +399,15 @@ sub init { } push(@supptables, "LEFT JOIN cc cc_$chartseq ON bugs.bug_id = cc_$chartseq.bug_id"); - push(@supptables, "LEFT JOIN profiles map_cc_$chartseq ON cc_$chartseq.who = map_cc_$chartseq.userid"); - $f = "map_cc_$chartseq.login_name"; + $ff = $f = "map_cc_$chartseq.login_name"; + my $ref = $funcsbykey{",$t"}; + &$ref; + push(@supptables, + "LEFT JOIN profiles map_cc_$chartseq " . + "ON (cc_$chartseq.who = map_cc_$chartseq.userid " . + "AND ($term))" + ); + $term = "$f IS NOT NULL"; }, "^long_?desc,changedby" => sub { @@ -759,6 +766,12 @@ sub init { push(@wherepart, "$table.dependson = bugs.bug_id"); }, + "^alias," => sub { + $ff = "COALESCE(bugs.alias, '')"; + my $ref = $funcsbykey{",$t"}; + &$ref; + }, + "^owner_idle_time,(greaterthan|lessthan)" => sub { my $table = "idle_" . $chartid; $v =~ /^(\d+)\s*([hHdDwWmMyY])?$/;