[Rt-commit] r2784 - in rt/branches/QUEBEC-EXPERIMENTAL: .
lib/RT/Search lib/t/regression
jesse at bestpractical.com
jesse at bestpractical.com
Tue Apr 19 17:37:39 EDT 2005
Author: jesse
Date: Tue Apr 19 17:37:38 2005
New Revision: 2784
Modified:
rt/branches/QUEBEC-EXPERIMENTAL/ (props changed)
rt/branches/QUEBEC-EXPERIMENTAL/lib/RT/Search/Googleish.pm
rt/branches/QUEBEC-EXPERIMENTAL/lib/t/regression/19quicksearch.t
Log:
r13941 at hualien: jesse | 2005-04-19 17:16:57 -0400
* Added FullText search back to simple search
Modified: rt/branches/QUEBEC-EXPERIMENTAL/lib/RT/Search/Googleish.pm
==============================================================================
--- rt/branches/QUEBEC-EXPERIMENTAL/lib/RT/Search/Googleish.pm (original)
+++ rt/branches/QUEBEC-EXPERIMENTAL/lib/RT/Search/Googleish.pm Tue Apr 19 17:37:38 2005
@@ -125,20 +125,27 @@
push @owner_clauses, "Owner = '" . $User->Name . "'";
}
- # Else, content must contain $key
+ elsif ($key =~ /^fulltext:(.*?)$/i) {
+ $key = $1;
+ $key =~ s/['\\].*//g;
+ push @tql_clauses, "Content LIKE '$key'";
+
+ }
+
+ # Else, subject must contain $key
else {
- $key =~ s/['\\].*//;
+ $key =~ s/['\\].*//g;
push @tql_clauses, "Subject LIKE '$key'";
}
}
- push @tql_clauses, join( " OR ", @id_clauses );
- push @tql_clauses, join( " OR ", @owner_clauses );
- push @tql_clauses, join( " OR ", @status_clauses );
- push @tql_clauses, join( " OR ", @user_clauses );
- push @tql_clauses, join( " OR ", @queue_clauses );
+ push @tql_clauses, join( " OR ", sort @id_clauses );
+ push @tql_clauses, join( " OR ", sort @owner_clauses );
+ push @tql_clauses, join( " OR ", sort @status_clauses );
+ push @tql_clauses, join( " OR ", sort @user_clauses );
+ push @tql_clauses, join( " OR ", sort @queue_clauses );
@tql_clauses = grep { $_ ? "( $_ )" : undef } @tql_clauses;
- return join " AND ", @tql_clauses;
+ return join " AND ", sort @tql_clauses;
}
# }}}
Modified: rt/branches/QUEBEC-EXPERIMENTAL/lib/t/regression/19quicksearch.t
==============================================================================
--- rt/branches/QUEBEC-EXPERIMENTAL/lib/t/regression/19quicksearch.t (original)
+++ rt/branches/QUEBEC-EXPERIMENTAL/lib/t/regression/19quicksearch.t Tue Apr 19 17:37:38 2005
@@ -27,12 +27,11 @@
my $quick = RT::Search::Googleish->new(Argument => "",
TicketsObj => $tickets);
my @tests = (
+ "fulltext:jesse" => "Content LIKE 'jesse'",
$queue => "Queue = '$queue'",
- "root $queue" => "Queue = '$queue' AND Owner = 'root'",
- "notauser $queue" => "Subject LIKE 'notauser' AND Queue = '$queue'",
- "notauser $queue root" => "Subject LIKE 'notauser' AND Queue = '$queue'".
- " AND Owner = 'root'"
-);
+ "root $queue" => "Owner = 'root' AND Queue = '$queue'",
+ "notauser $queue" => "Queue = '$queue' AND Subject LIKE 'notauser'",
+ "notauser $queue root" => "Owner = 'root' AND Queue = '$queue' AND Subject LIKE 'notauser'");
while (my ($from, $to) = splice @tests, 0, 2) {
is($quick->QueryToSQL($from), $to, "<$from> -> <$to>");
More information about the Rt-commit
mailing list