* feat: link email to participatn * fix: bugs * refactor: improve code * refactor: prevent repload * chore: remove unued * fix: type * refactor * fix: type * feat: restrict host * feat: type * feat: tests * fix: don't allow guest * fix: merk guest * fix: bugs * fix: test * fix: test * refactor: feedback * fix: tests --------- Co-authored-by: Volnei Munhoz <[email protected]>
14 lines
496 B
TypeScript
14 lines
496 B
TypeScript
import { cookies } from "next/headers";
|
|
import { NextResponse } from "next/server";
|
|
|
|
export async function validateCsrfToken(csrfToken: string): Promise<NextResponse | null> {
|
|
const cookieStore = await cookies();
|
|
const cookieToken = cookieStore.get("calcom.csrf_token")?.value;
|
|
|
|
if (!cookieToken || cookieToken !== csrfToken) {
|
|
return NextResponse.json({ success: false, message: "Invalid CSRF token" }, { status: 403 });
|
|
}
|
|
cookieStore.delete("calcom.csrf_token");
|
|
return null;
|
|
}
|