Changeset View
Changeset View
Standalone View
Standalone View
src/app/Http/Controllers/Controller.php
<?php | <?php | ||||
namespace App\Http\Controllers; | namespace App\Http\Controllers; | ||||
use Illuminate\Foundation\Bus\DispatchesJobs; | use Illuminate\Foundation\Bus\DispatchesJobs; | ||||
use Illuminate\Routing\Controller as BaseController; | use Illuminate\Routing\Controller as BaseController; | ||||
use Illuminate\Foundation\Validation\ValidatesRequests; | use Illuminate\Foundation\Validation\ValidatesRequests; | ||||
use Illuminate\Foundation\Auth\Access\AuthorizesRequests; | use Illuminate\Foundation\Auth\Access\AuthorizesRequests; | ||||
class Controller extends BaseController | class Controller extends BaseController | ||||
{ | { | ||||
use AuthorizesRequests; | use AuthorizesRequests; | ||||
use DispatchesJobs; | use DispatchesJobs; | ||||
use ValidatesRequests; | use ValidatesRequests; | ||||
/** | |||||
* Common error response builder for API (JSON) responses | |||||
* | |||||
* @param int $code Error code | |||||
* @param string $message Error message | |||||
* | |||||
* @return \Illuminate\Http\JsonResponse | |||||
*/ | |||||
protected function errorResponse(int $code, string $message = null) | |||||
{ | |||||
$errors = [ | |||||
400 => "Bad request", | |||||
401 => "Unauthorized", | |||||
403 => "Access denied", | |||||
404 => "Not found", | |||||
422 => "Input validation error", | |||||
405 => "Method not allowed", | |||||
500 => "Internal server error", | |||||
]; | |||||
$response = [ | |||||
'status' => 'error', | |||||
'message' => $message ?: (isset($errors[$code]) ? $errors[$code] : "Server error"), | |||||
]; | |||||
return response()->json($response, $code); | |||||
} | |||||
} | } |