aboutsummaryrefslogtreecommitdiff
path: root/pages/api/user
diff options
context:
space:
mode:
Diffstat (limited to 'pages/api/user')
-rw-r--r--pages/api/user/profile.js103
-rw-r--r--pages/api/user/update/episode.js2
2 files changed, 50 insertions, 55 deletions
diff --git a/pages/api/user/profile.js b/pages/api/user/profile.js
index 89a23d5..5ca6b75 100644
--- a/pages/api/user/profile.js
+++ b/pages/api/user/profile.js
@@ -1,71 +1,66 @@
import { getServerSession } from "next-auth";
import { authOptions } from "../auth/[...nextauth]";
-import {
- createUser,
- deleteUser,
- getUser,
- updateUser,
-} from "../../../prisma/user";
+import { createUser, deleteUser, getUser, updateUser } from "@/prisma/user";
export default async function handler(req, res) {
- // const session = await getServerSession(req, res, authOptions);
- // if (session) {
- // Signed in
- try {
- switch (req.method) {
- case "POST": {
- const { name } = req.body;
- const new_user = await createUser(name);
- 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, settings } = req.body;
- const user = await updateUser(name, settings);
- if (!user) {
- return res.status(200).json({ message: "Can't update settings" });
- } else {
- return res.status(200).json(user);
+ const session = await getServerSession(req, res, authOptions);
+ if (session) {
+ // Signed in
+ try {
+ switch (req.method) {
+ case "POST": {
+ const { name } = req.body;
+ const new_user = await createUser(name);
+ if (!new_user) {
+ return res.status(200).json({ message: "User is already created" });
+ } else {
+ return res.status(201).json(new_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 "PUT": {
+ const { name, settings } = req.body;
+ const user = await updateUser(name, settings);
+ if (!user) {
+ return res.status(200).json({ message: "Can't update settings" });
+ } else {
+ return res.status(200).json(user);
+ }
}
- }
- case "DELETE": {
- const { name } = req.body;
- // return res.status(200).json({ name });
- if (session.user.name !== name) {
- return res.status(401).json({ message: "Unauthorized" });
- } else {
- const user = await deleteUser(name);
+ 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;
+ // return res.status(200).json({ name });
+ if (session.user.name !== name) {
+ return res.status(401).json({ message: "Unauthorized" });
+ } else {
+ const user = await deleteUser(name);
+ if (!user) {
+ return res.status(404).json({ message: "User not found" });
+ } else {
+ return res.status(200).json(user);
+ }
+ }
+ }
+ default: {
+ return res.status(405).json({ message: "Method not allowed" });
+ }
}
- default: {
- return res.status(405).json({ message: "Method not allowed" });
- }
+ } 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);
}
- // } else {
- // // Not Signed in
- // res.status(401);
- // }
- // res.end();
+ res.end();
}
diff --git a/pages/api/user/update/episode.js b/pages/api/user/update/episode.js
index 3ee345d..bee98ab 100644
--- a/pages/api/user/update/episode.js
+++ b/pages/api/user/update/episode.js
@@ -7,7 +7,7 @@ import {
deleteList,
getEpisode,
updateUserEpisode,
-} from "../../../../prisma/user";
+} from "@/prisma/user";
export default async function handler(req, res) {
const session = await getServerSession(req, res, authOptions);