Yaltopia-FIFA/app/api/master/calendar/route.ts
Kirubel-Kibru-Yaltopia 89440985f1
Some checks failed
Deploy to Cloudflare Workers / deploy (push) Has been cancelled
x
2026-05-24 21:46:10 +03:00

33 lines
1.0 KiB
TypeScript

import { createClient } from "@/lib/supabase/server";
import { requireUser } from "@/lib/api/auth";
import { apiError, apiSuccess } from "@/lib/api/errors";
import { getMasterCalendarMatches } from "@/lib/services/calendar";
import { resolvePortalRole } from "@/lib/auth/resolve-portal-role";
export async function GET(request: Request) {
try {
const supabase = await createClient();
const user = await requireUser(supabase);
const { role } = await resolvePortalRole(supabase, user);
if (role !== "league_master") {
return apiError(new Error("League master access required"));
}
const { searchParams } = new URL(request.url);
const from = searchParams.get("from");
const to = searchParams.get("to");
if (!from || !to) {
return apiError(new Error("from and to query params required"));
}
const data = await getMasterCalendarMatches(
supabase,
user.id,
false,
from,
to
);
return apiSuccess(data);
} catch (e) {
return apiError(e);
}
}