diff options
| author | Factiven <[email protected]> | 2023-09-25 00:44:40 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-09-25 00:44:40 +0700 |
| commit | 1a85c2571690ba592ac5183d5eadaf9846fe532b (patch) | |
| tree | 3f3552c00cd49c0eeab5275275cf5cf5666e5027 /pages/api/user/profile.js | |
| parent | Delete .github/workflows/deploy.yml (diff) | |
| download | moopa-4.1.0.tar.xz moopa-4.1.0.zip | |
Update v4.1.0 (#79)v4.1.0
* Update v4.1.0
* Update pages/_app.js
Diffstat (limited to 'pages/api/user/profile.js')
| -rw-r--r-- | pages/api/user/profile.js | 103 |
1 files changed, 49 insertions, 54 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(); } |