mirror of
https://github.com/documenso/documenso.git
synced 2025-11-13 16:23:06 +10:00
document basics
This commit is contained in:
@ -1 +1,54 @@
|
|||||||
export {};
|
import { defaultHandler, defaultResponder } from "@documenso/lib/server";
|
||||||
|
import prisma from "@documenso/prisma";
|
||||||
|
import { NextApiRequest, NextApiResponse } from "next";
|
||||||
|
import { getToken } from "next-auth/jwt";
|
||||||
|
import { useSession } from "next-auth/react";
|
||||||
|
import { buffer } from "stream/consumers";
|
||||||
|
|
||||||
|
async function postHandler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
|
const token = await getToken({ req });
|
||||||
|
const tokenEmail = token?.email?.toString();
|
||||||
|
if (!token) {
|
||||||
|
res.status(401).end();
|
||||||
|
}
|
||||||
|
|
||||||
|
let user = await prisma.user.findFirst({
|
||||||
|
where: { email: tokenEmail },
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!user) {
|
||||||
|
res.status(401).end();
|
||||||
|
} else {
|
||||||
|
let newDocument: any;
|
||||||
|
newDocument = await prisma.document
|
||||||
|
.create({
|
||||||
|
data: {
|
||||||
|
userId: user?.id,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
.then(async () => {
|
||||||
|
return res.status(201).end();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function getHandler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
|
const token = await getToken({ req });
|
||||||
|
const tokenEmail = token?.email?.toString();
|
||||||
|
if (!token) {
|
||||||
|
res.status(401).end();
|
||||||
|
}
|
||||||
|
|
||||||
|
let user = await prisma.user.findFirst({
|
||||||
|
where: { email: tokenEmail },
|
||||||
|
});
|
||||||
|
|
||||||
|
return res
|
||||||
|
.status(200)
|
||||||
|
.json(await prisma.document.findMany({ where: { userId: user?.id } }));
|
||||||
|
}
|
||||||
|
|
||||||
|
export default defaultHandler({
|
||||||
|
GET: Promise.resolve({ default: defaultResponder(getHandler) }),
|
||||||
|
POST: Promise.resolve({ default: defaultResponder(postHandler) }),
|
||||||
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user