Add user backend provider system

This commit is contained in:
Frederic Guillot
2017-11-09 15:09:54 -08:00
parent 95b2a36886
commit 44aa24bab1
23 changed files with 273 additions and 50 deletions

View File

@@ -0,0 +1,43 @@
<?php
namespace Kanboard\User;
use Kanboard\Core\Base;
use Kanboard\Core\User\UserBackendProviderInterface;
use Kanboard\Filter\UserNameFilter;
use Kanboard\Model\UserModel;
/**
* Database Backend User Provider
*
* @package Kanboard\User
* @author Frederic Guillot
*/
class DatabaseBackendUserProvider extends Base implements UserBackendProviderInterface
{
/**
* Find a group from a search query
*
* @access public
* @param string $input
* @return DatabaseUserProvider[]
*/
public function find($input)
{
$result = array();
$users = $this->userQuery->withFilter(new UserNameFilter($input))
->getQuery()
->columns(UserModel::TABLE.'.id', UserModel::TABLE.'.username', UserModel::TABLE.'.name')
->eq(UserModel::TABLE.'.is_active', 1)
->asc(UserModel::TABLE.'.name')
->asc(UserModel::TABLE.'.username')
->findAll();
foreach ($users as $user) {
$result[] = new DatabaseUserProvider($user);
}
return $result;
}
}