diff options
Diffstat (limited to 'pages')
| -rw-r--r-- | pages/_document.js | 4 | ||||
| -rw-r--r-- | pages/api/user/profile.js | 83 | ||||
| -rw-r--r-- | pages/api/user/update/episode.js | 119 | ||||
| -rw-r--r-- | pages/en/anime/watch/[...info].js | 34 | ||||
| -rw-r--r-- | pages/en/index.js | 37 | ||||
| -rw-r--r-- | pages/en/test.js | 11 |
6 files changed, 160 insertions, 128 deletions
diff --git a/pages/_document.js b/pages/_document.js index d79f31f..31be82b 100644 --- a/pages/_document.js +++ b/pages/_document.js @@ -1,10 +1,6 @@ import { Html, Head, Main, NextScript } from "next/document"; -// import { randomBytes } from "crypto"; export default function Document() { - // const nonce = randomBytes(128).toString("base64"); - // const csp = `object-src 'none'; base-uri 'none'; script-src 'self' 'unsafe-eval' 'unsafe-inline' https: http: 'nonce-${nonce}' 'strict-dynamic'`; - return ( <Html lang="en"> <Head> diff --git a/pages/api/user/profile.js b/pages/api/user/profile.js index 2b44ae2..dd22bd8 100644 --- a/pages/api/user/profile.js +++ b/pages/api/user/profile.js @@ -1,3 +1,6 @@ +import { getServerSession } from "next-auth"; +import { authOptions } from "../auth/[...nextauth]"; + import { createUser, deleteUser, @@ -6,47 +9,55 @@ import { } from "../../../prisma/user"; export default async function handler(req, res) { - try { - switch (req.method) { - case "POST": { - const { name, setting } = req.body; - const new_user = await createUser(name, setting); - if (!new_user) { - return res.status(200).json({ message: "User is already created" }); - } else { - return res.status(201).json(new_user); + const session = await getServerSession(req, res, authOptions); + if (session) { + // Signed in + try { + switch (req.method) { + case "POST": { + const { name, setting } = req.body; + const new_user = await createUser(name, setting); + if (!new_user) { + return res.status(200).json({ message: "User is already created" }); + } else { + return res.status(201).json(new_user); + } } - } - case "PUT": { - const { name, anime } = req.body; - const user = await updateUser(name, anime); - if (!user) { - return res.status(200).json({ message: "Title is already there" }); - } else { - return res.status(200).json(user); + case "PUT": { + const { name, anime } = req.body; + const user = await updateUser(name, anime); + if (!user) { + return res.status(200).json({ message: "Title is already there" }); + } else { + return res.status(200).json(user); + } } - } - case "GET": { - const { name } = req.query; - const user = await getUser(name); - if (!user) { - return res.status(404).json({ message: "User not found" }); - } else { - return res.status(200).json(user); + case "GET": { + const { name } = req.query; + const user = await getUser(name); + if (!user) { + return res.status(404).json({ message: "User not found" }); + } else { + return res.status(200).json(user); + } } - } - case "DELETE": { - const { name } = req.body; - const user = await deleteUser(name); - if (!user) { - return res.status(404).json({ message: "User not found" }); - } else { - return res.status(200).json(user); + case "DELETE": { + const { name } = req.body; + const user = await deleteUser(name); + if (!user) { + return res.status(404).json({ message: "User not found" }); + } else { + return res.status(200).json(user); + } } } + } catch (error) { + console.log(error); + return res.status(500).json({ message: "Internal server error" }); } - } catch (error) { - console.log(error); - return res.status(500).json({ message: "Internal server error" }); + } else { + // Not Signed in + res.status(401); } + res.end(); } diff --git a/pages/api/user/update/episode.js b/pages/api/user/update/episode.js index f69bb78..7974446 100644 --- a/pages/api/user/update/episode.js +++ b/pages/api/user/update/episode.js @@ -1,3 +1,6 @@ +import { getServerSession } from "next-auth"; +import { authOptions } from "../../auth/[...nextauth]"; + import { createList, getEpisode, @@ -5,64 +8,74 @@ import { } from "../../../../prisma/user"; export default async function handler(req, res) { - try { - switch (req.method) { - case "POST": { - const { name, id } = JSON.parse(req.body); + const session = await getServerSession(req, res, authOptions); + if (session) { + // Signed in + try { + switch (req.method) { + case "POST": { + const { name, id } = JSON.parse(req.body); - const episode = await createList(name, id); - if (!episode) { - return res - .status(200) - .json({ message: "Episode is already created" }); - } else { - return res.status(201).json(episode); + const episode = await createList(name, id); + if (!episode) { + return res + .status(200) + .json({ message: "Episode is already created" }); + } else { + return res.status(201).json(episode); + } } - } - case "PUT": { - const { - name, - id, - watchId, - title, - image, - number, - duration, - timeWatched, - aniTitle, - provider, - } = JSON.parse(req.body); - const episode = await updateUserEpisode({ - name, - id, - watchId, - title, - image, - number, - duration, - timeWatched, - aniTitle, - provider, - }); - if (!episode) { - return res.status(200).json({ message: "Episode is already there" }); - } else { - return res.status(200).json(episode); + case "PUT": { + const { + name, + id, + watchId, + title, + image, + number, + duration, + timeWatched, + aniTitle, + provider, + } = JSON.parse(req.body); + const episode = await updateUserEpisode({ + name, + id, + watchId, + title, + image, + number, + duration, + timeWatched, + aniTitle, + provider, + }); + if (!episode) { + return res + .status(200) + .json({ message: "Episode is already there" }); + } else { + return res.status(200).json(episode); + } } - } - case "GET": { - const { name, id } = req.query; - // console.log(req.query); - const episode = await getEpisode(name, id); - if (!episode) { - return res.status(404).json({ message: "Episode not found" }); - } else { - return res.status(200).json(episode); + case "GET": { + const { name, id } = req.query; + // console.log(req.query); + const episode = await getEpisode(name, id); + if (!episode) { + return res.status(404).json({ message: "Episode not found" }); + } else { + return res.status(200).json(episode); + } } } + } catch (error) { + console.log(error); + return res.status(500).json({ message: "Internal server error" }); } - } catch (error) { - console.log(error); - return res.status(500).json({ message: "Internal server error" }); + } else { + // Not Signed in + res.status(401); } + res.end(); } diff --git a/pages/en/anime/watch/[...info].js b/pages/en/anime/watch/[...info].js index bc8851b..e013c6b 100644 --- a/pages/en/anime/watch/[...info].js +++ b/pages/en/anime/watch/[...info].js @@ -62,6 +62,7 @@ export default function Info({ } } } + bannerImage description coverImage { extraLarge @@ -127,7 +128,7 @@ export default function Info({ } } } - + setInfo(data.data.Media); const response = await fetch( @@ -159,7 +160,7 @@ export default function Info({ setLoading(false); } } - + setArtStorage(JSON.parse(localStorage.getItem("artplayer_settings"))); // setEpiData(episodes); setLoading(false); @@ -237,18 +238,23 @@ export async function getServerSideProps(context) { let userData = null; - if (session) { - await createUser(session.user.name); - await createList(session.user.name, watchId); - const data = await getEpisode(session.user.name, watchId); - userData = JSON.parse( - JSON.stringify(data, (key, value) => { - if (key === "createdDate") { - return String(value); - } - return value; - }) - ); + try { + if (session) { + await createUser(session.user.name); + await createList(session.user.name, watchId); + const data = await getEpisode(session.user.name, watchId); + userData = JSON.parse( + JSON.stringify(data, (key, value) => { + if (key === "createdDate") { + return String(value); + } + return value; + }) + ); + } + } catch (error) { + console.error(error); + // Handle the error here } return { diff --git a/pages/en/index.js b/pages/en/index.js index c3a98fc..159d257 100644 --- a/pages/en/index.js +++ b/pages/en/index.js @@ -29,8 +29,13 @@ import { ToastContainer, toast } from "react-toastify"; export async function getServerSideProps(context) { const session = await getServerSession(context.req, context.res, authOptions); - if (session) { - await createUser(session.user.name); + try { + if (session) { + await createUser(session.user.name); + } + } catch (error) { + console.error(error); + // Handle the error here } const trendingDetail = await aniListData({ @@ -145,22 +150,34 @@ export default function Home({ detail, populars, sessions, upComing }) { useEffect(() => { async function userData() { let data; - if (sessions?.user?.name) { - data = await fetch( - `/api/user/profile?name=${sessions?.user?.name}` - ).then((res) => { + try { + if (sessions?.user?.name) { + const res = await fetch( + `/api/user/profile?name=${sessions.user.name}` + ); if (!res.ok) { switch (res.status) { case 404: { - return console.log("user not found"); + console.log("user not found"); + break; } case 500: { - return console.log("server error"); + console.log("server error"); + break; + } + default: { + console.log("unknown error"); + break; } } + } else { + data = await res.json(); + // Do something with the data } - return res.json(); - }); + } + } catch (error) { + console.error(error); + // Handle the error here } if (!data) { const dat = JSON.parse(localStorage.getItem("artplayer_settings")); diff --git a/pages/en/test.js b/pages/en/test.js deleted file mode 100644 index cf76827..0000000 --- a/pages/en/test.js +++ /dev/null @@ -1,11 +0,0 @@ -import VideoPlayer from "../../components/videoPlayer"; - -export default function Test() { - return ( - <div className="flex-center w-screen h-screen"> - <div className="h-full aspect-video bg-black"> - <VideoPlayer /> - </div> - </div> - ); -} |