-
-
Notifications
You must be signed in to change notification settings - Fork 9
/
UserSearcher.php
49 lines (41 loc) · 1.11 KB
/
UserSearcher.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
/*
* This file is part of Flarum.
*
* For detailed copyright and license information, please view the
* LICENSE file that was distributed with this source code.
*/
namespace Flarum\User\Search;
use Flarum\Search\AbstractSearcher;
use Flarum\Search\GambitManager;
use Flarum\User\User;
use Flarum\User\UserRepository;
use Illuminate\Contracts\Events\Dispatcher;
use Illuminate\Database\Eloquent\Builder;
class UserSearcher extends AbstractSearcher
{
/**
* @var Dispatcher
*/
protected $events;
/**
* @var UserRepository
*/
protected $users;
/**
* @param UserRepository $users
* @param Dispatcher $events
* @param GambitManager $gambits
* @param array $searchMutators
*/
public function __construct(UserRepository $users, Dispatcher $events, GambitManager $gambits, array $searchMutators)
{
parent::__construct($gambits, $searchMutators);
$this->events = $events;
$this->users = $users;
}
protected function getQuery(User $actor): Builder
{
return $this->users->query()->whereVisibleTo($actor);
}
}