mirror of
https://github.com/documenso/documenso.git
synced 2025-11-13 00:03:33 +10:00
getDocument recfactor, qoc
This commit is contained in:
@ -19,10 +19,7 @@ async function getHandler(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const document: PrismaDocument = await getDocument(+documentId, {
|
const document: PrismaDocument = await getDocument(+documentId, req, res);
|
||||||
res: res,
|
|
||||||
req: req,
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!document)
|
if (!document)
|
||||||
res.status(404).end(`No document with id ${documentId} found.`);
|
res.status(404).end(`No document with id ${documentId} found.`);
|
||||||
|
|||||||
@ -21,10 +21,7 @@ async function postHandler(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const document: PrismaDocument = await getDocument(+documentId, {
|
const document: PrismaDocument = await getDocument(+documentId, req, res);
|
||||||
res: res,
|
|
||||||
req: req,
|
|
||||||
});
|
|
||||||
|
|
||||||
// todo encapsulate entity ownerships
|
// todo encapsulate entity ownerships
|
||||||
if (document.userId !== user.id) {
|
if (document.userId !== user.id) {
|
||||||
|
|||||||
@ -20,10 +20,7 @@ async function postHandler(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const document: PrismaDocument = await getDocument(+documentId, {
|
const document: PrismaDocument = await getDocument(+documentId, req, res);
|
||||||
res: res,
|
|
||||||
req: req,
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!document)
|
if (!document)
|
||||||
res.status(404).end(`No document with id ${documentId} found.`);
|
res.status(404).end(`No document with id ${documentId} found.`);
|
||||||
|
|||||||
@ -27,10 +27,11 @@ async function postHandler(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const document: PrismaDocument = await getDocument(recipient.documentId, {
|
const document: PrismaDocument = await getDocument(
|
||||||
res: res,
|
recipient.documentId,
|
||||||
req: req,
|
res,
|
||||||
});
|
req
|
||||||
|
);
|
||||||
|
|
||||||
if (!document) res.status(404).end(`No document found.`);
|
if (!document) res.status(404).end(`No document found.`);
|
||||||
|
|
||||||
|
|||||||
@ -156,10 +156,11 @@ export async function getServerSideProps(context: any) {
|
|||||||
|
|
||||||
const { id: documentId } = context.query;
|
const { id: documentId } = context.query;
|
||||||
|
|
||||||
const document: PrismaDocument = await getDocument(+documentId, {
|
const document: PrismaDocument = await getDocument(
|
||||||
res: context.res,
|
+documentId,
|
||||||
req: context.req,
|
context.res,
|
||||||
});
|
context.req
|
||||||
|
);
|
||||||
|
|
||||||
// todo optimize querys
|
// todo optimize querys
|
||||||
// todo no intersection groups
|
// todo no intersection groups
|
||||||
|
|||||||
@ -155,10 +155,11 @@ export async function getServerSideProps(context: any) {
|
|||||||
if (!user) return;
|
if (!user) return;
|
||||||
|
|
||||||
const { id: documentId } = context.query;
|
const { id: documentId } = context.query;
|
||||||
const document: PrismaDocument = await getDocument(+documentId, {
|
const document: PrismaDocument = await getDocument(
|
||||||
res: context.res,
|
+documentId,
|
||||||
req: context.req,
|
context.req,
|
||||||
});
|
context.res
|
||||||
|
);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
props: {
|
props: {
|
||||||
|
|||||||
@ -4,12 +4,13 @@ import { Document as PrismaDocument } from "@prisma/client";
|
|||||||
|
|
||||||
export const getDocument = async (
|
export const getDocument = async (
|
||||||
documentId: number,
|
documentId: number,
|
||||||
context: any
|
req: any,
|
||||||
|
res: any
|
||||||
): Promise<PrismaDocument> => {
|
): Promise<PrismaDocument> => {
|
||||||
const user = await getUserFromToken(context.req, context.res);
|
const user = await getUserFromToken(req, res);
|
||||||
if (!user) return Promise.reject("Invalid user or token.");
|
if (!user) return Promise.reject("Invalid user or token.");
|
||||||
if (!documentId) Promise.reject("No documentId");
|
if (!documentId) Promise.reject("No documentId");
|
||||||
if (!context) Promise.reject("No context");
|
if (!req || !res) Promise.reject("No res or req");
|
||||||
|
|
||||||
const document: PrismaDocument = await prisma.document.findFirstOrThrow({
|
const document: PrismaDocument = await prisma.document.findFirstOrThrow({
|
||||||
where: {
|
where: {
|
||||||
|
|||||||
Reference in New Issue
Block a user