Putting 4.2.0 on top of 4.0.17
[usit-rt.git] / share / html / Helpers / Autocomplete / Owners
index 93a571c..21adc31 100644 (file)
@@ -45,7 +45,7 @@
 %# those contributions and any derivatives thereof.
 %#
 %# END BPS TAGGED BLOCK }}}
-% $r->content_type('application/json');
+% $r->content_type('application/json; charset=utf-8');
 <% JSON( \@suggestions ) |n %>
 % $m->abort;
 <%ARGS>
@@ -65,9 +65,6 @@ $m->abort unless defined $return
 
 my $CurrentUser = $session{'CurrentUser'};
 
-my %fields = %{ RT->Config->Get('UserAutocompleteFields')
-                || { EmailAddress => 1, Name => 1, RealName => 'LIKE' } };
-
 my %user_uniq_hash;
 my $isSU = $session{CurrentUser}
     ->HasRight( Right => 'SuperUser', Object => $RT::System );
@@ -89,22 +86,13 @@ foreach my $spec (map { [split /\-/, $_, 2] } split /\|/, $limit) {
     }
 
     my $Users = RT::Users->new( $session{CurrentUser} );
-    $Users->RowsPerPage( $max );
-
     # Limit by our autocomplete term BEFORE we limit to OwnTicket because that
     # does a funky union hack
-    while (my ($name, $op) = each %fields) {
-        $op = 'STARTSWITH'
-            unless $op =~ /^(?:LIKE|(?:START|END)SWITH)$/i;
-
-        $Users->Limit(
-            FIELD           => $name,
-            OPERATOR        => $op,
-            VALUE           => $term,
-            ENTRYAGGREGATOR => 'OR',
-            SUBCLAUSE       => 'autocomplete',
-        );
-    }
+    $Users->SimpleSearch(
+        Max    => $max,
+        Term   => $term,
+        Return => $return,
+    );
 
     $Users->WhoHaveRight(
         Right               => 'OwnTicket',
@@ -117,7 +105,7 @@ foreach my $spec (map { [split /\-/, $_, 2] } split /\|/, $limit) {
         next if $user_uniq_hash{ $User->Id };
         $user_uniq_hash{ $User->Id() } = [
             $User,
-            $m->scomp('/Elements/ShowUser', User => $User, NoEscape => 1)
+            $User->Format,
         ];
     }
 }
@@ -127,7 +115,7 @@ my $nobody = qr/^n(?:o(?:b(?:o(?:d(?:y)?)?)?)?)?$/i;
 if ( not $user_uniq_hash{RT->Nobody->id} and $term =~ $nobody ) {
     $user_uniq_hash{RT->Nobody->id} = [
         RT->Nobody,
-        $m->scomp('/Elements/ShowUser', User => RT->Nobody, NoEscape => 1)
+        RT->Nobody->Format,
     ];
 }