ILIAS  trunk Revision v12.0_alpha-33-ge186251a14d
UserSearchEndpointConfigurator.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
25
27{
28 public function getParentClassPath(): array
29 {
30 return [
31 \ilMailGUI::class,
32 \ilMailFormGUI::class
33 ];
34 }
35
37 \ilObjUser $current_user,
38 AutocompleteQuery $autocomplete_query
39 ): array {
40 // #14768
41 $term = \ilUtil::stripSlashes($autocomplete_query->getUnprocessedSearchTerm());
42 $quoted_term = '%' . str_replace(
43 ['%', '_'],
44 ['\%', '\_'],
45 $term
46 ) . '%';
47
48 $result = new UserSearchAutocompleteItemResult($autocomplete_query);
49
50 $search = new Search($result);
51 $search->addProvider(
52 new SentMailsBasedProvider($quoted_term, $term)
53 );
54 $search->addProvider(
55 new \ILIAS\Contact\BuddySystem\MailRecipientSearch\MailRecipientSearchProvider($quoted_term, $term)
56 );
57 $search->search();
58
59 return $result->getItems();
60 }
61}
@phpstan-import-type AutoCompleteUserRecord from RecipientSearchProvider
Definition: Search.php:27
@phpstan-import-type AutoCompleteUserRecord from RecipientSearchProvider
getAdditionalAnswerElements(\ilObjUser $current_user, AutocompleteQuery $autocomplete_query)
This class provides some pre-processing for search terms provided by a user when searching for users.
User class.
Util class various functions, usage as namespace.
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.