Files
ABSDEV/Modules/Commerce/Http/Controllers/ProductApiController.php
T
2026-07-24 14:59:44 +01:00

21 lines
686 B
PHP

<?php
namespace Modules\Commerce\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\JsonResponse;
use Modules\Commerce\Models\Product;
final class ProductApiController extends Controller
{
public function index(): JsonResponse
{
return response()->json(Product::query()->where('status', 'active')->where(fn ($q) => $q->whereNull('published_at')->orWhere('published_at', '<=', now()))->latest()->paginate(24));
}
public function show(string $product): JsonResponse
{
return response()->json(Product::where('status', 'active')->where(fn ($q) => $q->where('slug', $product)->orWhere('id', $product))->firstOrFail());
}
}