%PDF- %PDF-
Direktori : /var/www/html/geotechnics/api/app/Http/Controllers/Api/ |
Current File : /var/www/html/geotechnics/api/app/Http/Controllers/Api/ApiController.php |
<?php namespace App\Http\Controllers\Api; use App\Models\User; use Illuminate\Foundation\Auth\Access\AuthorizesRequests; use Illuminate\Foundation\Bus\DispatchesJobs; use Illuminate\Foundation\Validation\ValidatesRequests; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Routing\Controller as BaseController; use League\Fractal\Pagination\IlluminatePaginatorAdapter; class ApiController extends BaseController { use AuthorizesRequests, DispatchesJobs, ValidatesRequests; /** * @return User */ public function getLoggedInUser() { return auth() ->guard('api') ->user(); } public function item($data, $transformer, $meta = []) { return response()->json(fractal($data, $transformer)->addMeta($meta)); } public function collection($data, $transformer, $meta = []) { return response()->json(fractal($data, $transformer) ->addMeta($meta) ->toArray()); } public function withPaginated($paginator, $transformer, $resourceKey = null, $meta = []) { return fractal() ->collection($paginator->getCollection(), $transformer, $resourceKey) ->paginateWith(new IlluminatePaginatorAdapter($paginator)) ->addMeta($meta); } public function wrongArguments($args) { return response()->json($args, 400); } public function notFound($args) { return response()->json($args, 404); } public function unauthorized($args) { return response()->json($args, 401); } public function methodNotAllowed() { return response()->json([ 'message' => 'This http method is not allowed', ], 405); } public function methodForbidden($message = 'You are not allowed to perform this operation.') { return response()->json([ 'message' => $message, ], 403); } }