Support custom user id though API, closes #115

This commit is contained in:
Dane Everitt 2016-10-06 22:36:59 -04:00
parent c347a6756c
commit 9d10c2a757
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
3 changed files with 26 additions and 17 deletions

View file

@ -62,8 +62,7 @@ class UserController extends BaseController
*/
public function list(Request $request)
{
$users = Models\User::paginate(50);
return $this->response->paginator($users, new UserTransformer);
return Models\User::all()->toArray();
}
/**
@ -95,7 +94,12 @@ class UserController extends BaseController
if (!$query->first()) {
throw new NotFoundHttpException('No user by that ID was found.');
}
return $query->first();
$user = $query->first();
$userArray = $user->toArray();
$userArray['servers'] = Models\Server::select('id', 'uuid', 'node', 'suspended')->where('owner', $user->id)->get();
return $userArray;
} catch (NotFoundHttpException $ex) {
throw $ex;
} catch (\Exception $ex) {
@ -113,25 +117,18 @@ class UserController extends BaseController
* @Request({
* "email": "foo@example.com",
* "password": "foopassword",
* "admin": false
* "admin": false,
* "custom_id": 123
* }, headers={"Authorization": "Bearer <token>"}),
* @Response(201),
* @Response(422, body={
* "message": "A validation error occured.",
* "errors": {
* "email": {"The email field is required."},
* "password": {"The password field is required."},
* "admin": {"The admin field is required."}
* },
* "status_code": 422
* })
* @Response(422)
* })
*/
public function create(Request $request)
{
try {
$user = new UserRepository;
$create = $user->create($request->input('email'), $request->input('password'), $request->input('admin'));
$create = $user->create($request->input('email'), $request->input('password'), $request->input('admin'), $request->input('custom_id'));
return $this->response->created(route('api.users.view', [
'id' => $create
]));