Skip to content
Snippets Groups Projects
Commit 61f48e4e authored by alrwasheda's avatar alrwasheda :speech_balloon:
Browse files

showCurrentUser + updateCurrentUser Controllers

parent 42cef9e5
No related branches found
No related tags found
No related merge requests found
import Worker from "../db/models/Worker";
import { Request, Response } from "express";
//show current user GET
const showCurrentUserController = async (req: Request, res: Response) => {
try {
if (!(res.locals.user.role === "coordinator")) {
return res
.status(403)
.json({ success: false, error: "MustBeCoordinator" });
}
//get current user (coordinator) data from DB
const currentUserData = await Worker.findAll({
where: {
role: "coordinator",
},
});
res.status(200).json({ success: true, result: currentUserData });
} catch (error) {
console.log("server error: ", error.message);
res.status(500).json({ success: false, error: "serverError!" });
}
};
//update current user PUT
const updateCurrentUser = async (req: Request, res: Response) => {
try {
//check role
if (!(res.locals.user.role === "coordinator")) {
return res
.status(403)
.json({ success: false, error: "MustBeCoordinator" });
}
//take what ever in req.body is, and pass it to update()
const input = req.body; //Data are saved in the DB in camelCase
//update coordinator data
await Worker.update(input, {
where: {
role: "coordinator",
},
});
//send new coordinator-data back
const updatedWorker = await Worker.findAll({
where: {
role: "coordinator",
},
});
return res.status(200).json({ success: true, result: updatedWorker });
} catch (error) {
console.error("server error: ", error.message);
return res.status(500).json({ success: false, error: "serverError" });
}
};
const userControllers = {
showCurrentUserController,
updateCurrentUser,
};
export default userControllers;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment