From 1176bd8d61a55297707bf28810a9fcea06e82ec5 Mon Sep 17 00:00:00 2001 From: "bugreport%peshkin.net" <> Date: Thu, 29 Jul 2004 07:46:57 +0000 Subject: 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 --- Bugzilla/Search.pm | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'Bugzilla/Search.pm') diff --git a/Bugzilla/Search.pm b/Bugzilla/Search.pm index 49f32fdf8..00b213d54 100644 --- a/Bugzilla/Search.pm +++ b/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])?$/; -- cgit v1.2.3-24-g4f1b