diff --git a/src/app/Http/Controllers/API/V4/LicenseController.php b/src/app/Http/Controllers/API/V4/LicenseController.php index 9183f861..db4e9697 100644 --- a/src/app/Http/Controllers/API/V4/LicenseController.php +++ b/src/app/Http/Controllers/API/V4/LicenseController.php @@ -1,68 +1,64 @@ guard()->user(); if (!$this->checkTenant($user)) { return $this->errorResponse(404); } $licenses = $user->licenses()->where('type', $type)->orderBy('created_at')->get(); // No licenses for the user, take one if available if (!count($licenses)) { DB::beginTransaction(); $license = License::withObjectTenantContext($user) ->where('type', $type) ->whereNull('user_id') ->limit(1) ->lockForUpdate() ->first(); if ($license) { $license->user_id = $user->id; $license->save(); $licenses = \collect([$license]); } DB::commit(); } // Slim down the result set $licenses = $licenses->map(function ($license) { return [ 'key' => $license->key, 'type' => $license->type, ]; }); return response()->json([ 'list' => $licenses, 'count' => count($licenses), 'hasMore' => false, // TODO ]); } }