* refactor: Casts, Observers and Traits * refactor: replace Sluggable observer with HasSlug trait in models * test: add HasSlug trait tests for slug generation and uniqueness * refactor: rename resource classes for consistency and update references * refactor: update return type of index method to use AnonymousResourceCollection * refactor: simplify slug generation in HasSlug trait and update tests for consistency * refactor: update namespace annotation in UserBidResource for clarity * apply coderabbit suggestions * fix tests
32 lines
655 B
PHP
32 lines
655 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
use App\Contracts\Controller;
|
|
use App\Http\Resources\AirlineResource;
|
|
use App\Models\Airline;
|
|
use Illuminate\Http\Request;
|
|
|
|
class AirlineController extends Controller
|
|
{
|
|
/**
|
|
* Return all the airlines, paginated
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public function index(Request $request)
|
|
{
|
|
$airlines = Airline::active()->orderBy('name')->paginate();
|
|
|
|
return AirlineResource::collection($airlines);
|
|
}
|
|
|
|
/**
|
|
* Return a specific airline
|
|
*/
|
|
public function get(int $id): AirlineResource
|
|
{
|
|
return new AirlineResource(Airline::findOrFail($id));
|
|
}
|
|
}
|