| 1 | <?php |
||
| 15 | class UserRepository extends \Doctrine\ORM\EntityRepository implements UserLoaderInterface |
||
| 16 | { |
||
| 17 | 4 | public function loadUserByUsername($username) |
|
| 18 | { |
||
| 19 | 4 | return $this->createQueryBuilder('user') |
|
| 20 | 4 | ->andWhere('user.apiToken = :username') |
|
| 21 | 4 | ->setParameter('username', $username) |
|
| 22 | 4 | ->getQuery() |
|
| 23 | 4 | ->getOneOrNullResult(); |
|
| 24 | } |
||
| 25 | |||
| 26 | /** |
||
| 27 | * @param Filter $filter |
||
| 28 | * |
||
| 29 | * @return Query |
||
| 30 | */ |
||
| 31 | public function selectUsersByParams(Filter $filter):Query |
||
| 32 | { |
||
| 33 | $postsQuery = $this->createQueryBuilder('u'); |
||
| 34 | if ($filter->name) { |
||
| 35 | $postsQuery->where( |
||
| 36 | $postsQuery->expr()->like('u.firstName', ':name') |
||
| 37 | ) |
||
| 38 | ->orWhere( |
||
| 39 | $postsQuery->expr()->like('u.lastName', ':name') |
||
| 40 | ) |
||
| 41 | ->orWhere( |
||
| 42 | $postsQuery->expr()->like('u.email', ':name') |
||
| 43 | ) |
||
| 44 | ->setParameter('name', '%'.$filter->name.'%'); |
||
| 45 | } |
||
| 46 | |||
| 47 | return $postsQuery->getQuery(); |
||
| 48 | } |
||
| 49 | |||
| 50 | public function selectNotBlocked() |
||
| 58 | } |
||
| 59 |