Files
2026-07-23 12:50:03 +07:00

54 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers\Api\Content;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Validation\Rule;
use Illuminate\Http\JsonResponse;
use App\Enums\TaxonomyType;
use App\Models\Taxonomy;
use App\Http\Resources\TaxonomyResource;
class TaxonomyController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index(Request $request): JsonResponse
{
$validated = $request->validate([
'type' => ['nullable', Rule::enum(TaxonomyType::class)],
]);
$taxonomies = Taxonomy::query()
->when(
isset($validated['type']),
fn ($query) => $query->where('type', $validated['type'])
)
->get();
return response()->json([
'success' => true,
'data' => [
'taxonomies' => TaxonomyResource::collection($taxonomies),
],
]);
}
/**
* Display the specified resource.
*/
public function show(Taxonomy $taxonomy): JsonResponse
{
return response()->json([
'success' => true,
'data' => [
'taxonomy' => new TaxonomyResource($taxonomy),
],
]);
}
}