Changeset View
Changeset View
Standalone View
Standalone View
src/app/Http/Controllers/API/V4/Admin/UsersController.php
<?php | <?php | ||||
namespace App\Http\Controllers\API\V4\Admin; | namespace App\Http\Controllers\API\V4\Admin; | ||||
use App\Domain; | use App\Domain; | ||||
use App\Sku; | use App\Sku; | ||||
use App\User; | use App\User; | ||||
use App\Wallet; | use App\Wallet; | ||||
use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
use Illuminate\Support\Facades\Validator; | use Illuminate\Support\Facades\Validator; | ||||
class UsersController extends \App\Http\Controllers\API\V4\UsersController | class UsersController extends \App\Http\Controllers\API\V4\UsersController | ||||
{ | { | ||||
/** | /** | ||||
* Delete a user. | * Delete a user. | ||||
* | * | ||||
* @param int $id User identifier | * @param string $id User identifier | ||||
* | * | ||||
* @return \Illuminate\Http\JsonResponse The response | * @return \Illuminate\Http\JsonResponse The response | ||||
*/ | */ | ||||
public function destroy($id) | public function destroy($id) | ||||
{ | { | ||||
return $this->errorResponse(404); | return $this->errorResponse(404); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 196 Lines • ▼ Show 20 Lines | public function setSku(Request $request, $id, $sku) | ||||
'cost' => $entitlement->cost, | 'cost' => $entitlement->cost, | ||||
'name' => $sku->name, | 'name' => $sku->name, | ||||
'id' => $sku->id, | 'id' => $sku->id, | ||||
] | ] | ||||
]); | ]); | ||||
} | } | ||||
/** | /** | ||||
* Display information on the user account specified by $id. | |||||
* | |||||
* @param int $id The account to show information for. | |||||
* | |||||
* @return \Illuminate\Http\JsonResponse | |||||
*/ | |||||
public function show($id) | |||||
{ | |||||
$user = User::find($id); | |||||
if (!$this->checkTenant($user)) { | |||||
return $this->errorResponse(404); | |||||
} | |||||
if (!$this->guard()->user()->canRead($user)) { | |||||
return $this->errorResponse(403); | |||||
} | |||||
$response = $this->userResponse($user); | |||||
// Simplified Entitlement/SKU information, | |||||
// TODO: I agree this format may need to be extended in future | |||||
$response['skus'] = []; | |||||
foreach ($user->entitlements as $ent) { | |||||
$sku = $ent->sku; | |||||
if (!isset($response['skus'][$sku->id])) { | |||||
$response['skus'][$sku->id] = ['costs' => [], 'count' => 0]; | |||||
} | |||||
$response['skus'][$sku->id]['count']++; | |||||
$response['skus'][$sku->id]['costs'][] = $ent->cost; | |||||
} | |||||
$response['config'] = $user->getConfig(); | |||||
return response()->json($response); | |||||
} | |||||
/** | |||||
* Create a new user record. | * Create a new user record. | ||||
* | * | ||||
* @param \Illuminate\Http\Request $request The API request. | * @param \Illuminate\Http\Request $request The API request. | ||||
* | * | ||||
* @return \Illuminate\Http\JsonResponse The response | * @return \Illuminate\Http\JsonResponse The response | ||||
*/ | */ | ||||
public function store(Request $request) | public function store(Request $request) | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 107 Lines • Show Last 20 Lines |