permissions review
This commit is contained in:
@@ -58,7 +58,6 @@ class UserController extends Controller
|
||||
}
|
||||
|
||||
public function delete(Request $request): JsonResponse {
|
||||
|
||||
try {
|
||||
$user = User::find($request->user()->id);
|
||||
$user->delete();
|
||||
@@ -69,6 +68,19 @@ class UserController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
public function getUser(Request $request, int $id): JsonResponse {
|
||||
|
||||
try {
|
||||
return response()->json(UserService::getData($id));
|
||||
} catch (ModelNotFoundException $e) {
|
||||
return response()->json(['message' => 'Utilisateur non trouvé'], 404);
|
||||
} catch (\Exception $e) {
|
||||
Log::info($e->getMessage());
|
||||
return response()->json(['message' => "Server error"], 500);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function deleteById(Request $request, int $id): JsonResponse {
|
||||
|
||||
if(Gate::denies('deleteOther', $request->user())){
|
||||
@@ -86,10 +98,17 @@ class UserController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
public function getUser(Request $request, int $id): JsonResponse {
|
||||
public function deactivate(Request $request, int $id): JsonResponse {
|
||||
$userToDeactivate = User::findOrFail($id);
|
||||
|
||||
if(Gate::denies('deactivate', $request->user(), $userToDeactivate)){
|
||||
return response()->json(["message" => "Can't delete this user"], 403);
|
||||
}
|
||||
|
||||
try {
|
||||
return response()->json(UserService::getData($id));
|
||||
$userToDeactivate->update(['active' => false]);
|
||||
|
||||
return response()->json(['message' => 'User deactivated successfully']);
|
||||
} catch (ModelNotFoundException $e) {
|
||||
return response()->json(['message' => 'Utilisateur non trouvé'], 404);
|
||||
} catch (\Exception $e) {
|
||||
|
||||
Reference in New Issue
Block a user