diff options
Diffstat (limited to 'pages/api/user/update/episode.js')
| -rw-r--r-- | pages/api/user/update/episode.js | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/pages/api/user/update/episode.js b/pages/api/user/update/episode.js index 52c9494..3ee345d 100644 --- a/pages/api/user/update/episode.js +++ b/pages/api/user/update/episode.js @@ -4,6 +4,7 @@ import { authOptions } from "../../auth/[...nextauth]"; import { createList, deleteEpisode, + deleteList, getEpisode, updateUserEpisode, } from "../../../../prisma/user"; @@ -42,6 +43,9 @@ export default async function handler(req, res) { timeWatched, aniTitle, provider, + nextId, + nextNumber, + dub, } = JSON.parse(req.body); const episode = await updateUserEpisode({ name, @@ -54,6 +58,9 @@ export default async function handler(req, res) { timeWatched, aniTitle, provider, + nextId, + nextNumber, + dub, }); if (!episode) { return res @@ -74,15 +81,24 @@ export default async function handler(req, res) { } } case "DELETE": { - const { name, id } = req.body; + const { name, id, aniId } = req.body; if (session.user.name !== name) { return res.status(401).json({ message: "Unauthorized" }); } else { - const episode = await deleteEpisode(name, id); - if (!episode) { - return res.status(404).json({ message: "Episode not found" }); - } else { - return res.status(200).json({ message: "Episode deleted" }); + if (id) { + const episode = await deleteEpisode(name, id); + if (!episode) { + return res.status(404).json({ message: "Episode not found" }); + } else { + return res.status(200).json({ message: "Episode deleted" }); + } + } else if (aniId) { + const episode = await deleteList(name, aniId); + if (!episode) { + return res.status(404).json({ message: "Episode not found" }); + } else { + return res.status(200).json({ message: "Episode deleted" }); + } } } } @@ -93,7 +109,7 @@ export default async function handler(req, res) { } } else { // Not Signed in - res.status(401); + res.status(401).json({ message: "Unauthorized" }); } res.end(); } |