lomavuokraus/app/api/listings/mine/route.ts
Tero Halla-aho 0bb709d9c5
Some checks failed
CI / checks (push) Has been cancelled
chore: fix audit alerts and formatting
2026-02-04 12:43:03 +02:00

29 lines
972 B
TypeScript

import { NextResponse } from "next/server";
import { prisma } from "../../../../lib/prisma";
import { UserStatus } from "@prisma/client";
import { requireAuth } from "../../../../lib/jwt";
export async function GET(req: Request) {
try {
const session = await requireAuth(req);
const user = await prisma.user.findUnique({
where: { id: session.userId },
select: { status: true },
});
if (!user || user.status !== UserStatus.ACTIVE) {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
const listings = await prisma.listing.findMany({
where: { ownerId: session.userId },
select: {
id: true,
status: true,
translations: { select: { slug: true, title: true, locale: true } },
},
orderBy: { createdAt: "desc" },
});
return NextResponse.json({ listings });
} catch (error) {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
}