diff --git a/apps/web/pages/documents/[id]/index.tsx b/apps/web/pages/documents/[id]/index.tsx index b688a9c73..08c05acfa 100644 --- a/apps/web/pages/documents/[id]/index.tsx +++ b/apps/web/pages/documents/[id]/index.tsx @@ -114,21 +114,23 @@ export async function getServerSideProps(context: any) { const { id: documentId } = context.query; - const document: PrismaDocument = await getDocument( - +documentId, - context.req, - context.res - ); + try { + const document: PrismaDocument = await getDocument( + +documentId, + context.req, + context.res + ); + } catch (error) { + if (!document) { + return { + notFound: true, + }; + } + } // todo optimize querys // todo no intersection groups - if (!document) { - return { - notFound: true, - }; - } - return { props: { document: document, diff --git a/packages/lib/query/getDocument.ts b/packages/lib/query/getDocument.ts index d19555f62..f922f4c28 100644 --- a/packages/lib/query/getDocument.ts +++ b/packages/lib/query/getDocument.ts @@ -12,7 +12,7 @@ export const getDocument = async ( if (!documentId) Promise.reject("No documentId"); if (!req || !res) Promise.reject("No res or req"); - const document: PrismaDocument = await prisma.document.findFirst({ + const document: PrismaDocument = await prisma.document.findFirstOrThrow({ where: { id: documentId, userId: user.id,