From ef8f40143ffef93114a5204a8b109df7c3016362 Mon Sep 17 00:00:00 2001 From: MarconLP <13001502+MarconLP@users.noreply.github.com> Date: Tue, 11 Apr 2023 22:01:02 +0200 Subject: [PATCH] show real data on individual video page --- src/pages/share/[videoId].tsx | 24 +++++++++++++----------- src/server/api/routers/video.ts | 6 ++++++ 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/pages/share/[videoId].tsx b/src/pages/share/[videoId].tsx index f0726db..2623246 100644 --- a/src/pages/share/[videoId].tsx +++ b/src/pages/share/[videoId].tsx @@ -10,17 +10,17 @@ const VideoList: NextPage = () => { const router = useRouter(); const { videoId } = router.query as { videoId: string }; - const { data: video, isFetching } = api.video.get.useQuery( + const { data: video, isError } = api.video.get.useQuery( { videoId }, { enabled: router.isReady, } ); - console.log(video); - if (isFetching) { - return loading...; + if (isError) { + return this video is not publicly available; } + return ( <> @@ -30,7 +30,7 @@ const VideoList: NextPage = () => {
- Screenity + Screenity | {video?.title ?? ""}
@@ -43,12 +43,14 @@ const VideoList: NextPage = () => {
- + {video?.video_url && ( + + )}
diff --git a/src/server/api/routers/video.ts b/src/server/api/routers/video.ts index 5abdfe3..0d2ae1f 100644 --- a/src/server/api/routers/video.ts +++ b/src/server/api/routers/video.ts @@ -4,6 +4,7 @@ import { createTRPCRouter, protectedProcedure } from "~/server/api/trpc"; import { PutObjectCommand } from "@aws-sdk/client-s3"; import { env } from "~/env.mjs"; import { getSignedUrl } from "@aws-sdk/s3-request-presigner"; +import { TRPCError } from "@trpc/server"; export const videoRouter = createTRPCRouter({ getAll: protectedProcedure.query(async ({ ctx }) => { @@ -23,6 +24,11 @@ export const videoRouter = createTRPCRouter({ id: input.videoId, }, }); + + if (video?.userId !== ctx.session.user.id) { + throw new TRPCError({ code: "UNAUTHORIZED" }); + } + return video; }), getUploadUrl: protectedProcedure