Add user specific listing route
This commit is contained in:
parent
72acf06353
commit
3114c1f73e
|
@ -25,9 +25,38 @@ class UserController extends BaseController
|
||||||
* })
|
* })
|
||||||
* @Response(200)
|
* @Response(200)
|
||||||
*/
|
*/
|
||||||
public function getUsers(Request $request) {
|
public function getUsers(Request $request)
|
||||||
|
{
|
||||||
$users = Models\User::paginate(15);
|
$users = Models\User::paginate(15);
|
||||||
return $this->response->paginator($users, new UserTransformer);
|
return $this->response->paginator($users, new UserTransformer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* List Specific User
|
||||||
|
*
|
||||||
|
* Lists specific fields about a user or all fields pertaining to that user.
|
||||||
|
*
|
||||||
|
* @Get("/{id}/{fields}")
|
||||||
|
* @Versions({"v1"})
|
||||||
|
* @Parameters({
|
||||||
|
* @Parameter("id", type="integer", required=true, description="The ID of the user to get information on."),
|
||||||
|
* @Parameter("fields", type="string", required=false, description="A comma delimidated list of fields to include.")
|
||||||
|
* })
|
||||||
|
* @Response(200)
|
||||||
|
*/
|
||||||
|
public function getUserByID(Request $request, $id, $fields = null)
|
||||||
|
{
|
||||||
|
$query = Models\User::where('id', $id);
|
||||||
|
|
||||||
|
if (!is_null($fields)) {
|
||||||
|
foreach(explode(',', $fields) as $field) {
|
||||||
|
if (!empty($field)) {
|
||||||
|
$query->addSelect($field);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $query->first();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,13 +32,14 @@ class APIRoutes
|
||||||
$api->version('v1', ['middleware' => 'api.auth'], function ($api) {
|
$api->version('v1', ['middleware' => 'api.auth'], function ($api) {
|
||||||
|
|
||||||
$api->get('users', [
|
$api->get('users', [
|
||||||
'as' => 'api.auth.validate',
|
'as' => 'api.users',
|
||||||
'uses' => 'Pterodactyl\Http\Controllers\API\UserController@getUsers'
|
'uses' => 'Pterodactyl\Http\Controllers\API\UserController@getUsers'
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$api->get('users/{id}', function($id) {
|
$api->get('users/{id}/{fields?}', [
|
||||||
return Models\User::findOrFail($id);
|
'as' => 'api.users.view',
|
||||||
});
|
'uses' => 'Pterodactyl\Http\Controllers\API\UserController@getUserByID'
|
||||||
|
]);
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue