/
home
/
infinitibizsol
/
.trash
/
controllers.3
/
File Upload :
llllll
Current File: /home/infinitibizsol/.trash/controllers.3/authController.js
const brcrypt = require("bcrypt"); const db = require("../models"); const jwt = require("jsonwebtoken"); const loginController = async (req, res) => { try { const { email, password } = req.body; let [result] = await db.tblUser.findAll({ where: { email: email, }, }); // return res.json({ data: result }); if (!result) { return res .status(404) .json({ status: 404, message: "Invalid Credentials." }); } const isMatched = await brcrypt.compare(password, result.password); if (!isMatched) { return res .status(403) .json({ status: 403, message: "Invalid Credentials." }); } let token = await jwt.sign( { email: result.email, auctioneerId: result.auctioneer_id }, process.env.JWT_KEY ); return res.json({ status: 200, message: "Success", data: [{ token, ...result.dataValues }], }); } catch (error) { return res.status(500).json({ status: 500, message: "Internal Server Error", error: error.message, }); } }; const signupController = async (req, res) => { try { const { email, password } = req.body; const salt = await brcrypt.genSalt(10); const hashedPassword = await brcrypt.hash(password, salt); req.body.password = hashedPassword; let result; result = await db.tblUser.findAll({ where: { email: email } }); if (result.length > 0) { return res.status(402).json({ status: 402, message: "Email already existed please choose another account", }); } result = await db.tblUser.create(req.body); let token = await jwt.sign( { email: result.email, userId: result.user_id }, process.env.JWT_KEY ); return res.json({ status: 200, message: "Success", data: [{ token, ...result.dataValues }], }); } catch (error) { return res.status(500).json({ status: 500, message: "Internal Server Error", error: error.message, }); } }; const updateUserPassword = async (req, res) => { try { let { userId, newPassword } = req.body; if (newPassword) { const salt = await brcrypt.genSalt(10); const encrypPassword = await brcrypt.hash(newPassword, salt); req.body.password = encrypPassword; let result = await db.tblUser.update(req.body, { where: { user_id: userId }, }); return res.status(200).json({ status: 200, message: "Success" }); } else { return res.json({ status: 400, message: "newpassword undefined" }); } } catch (error) { return res.status(500).json({ status: 500, message: "Internal Server Error", error: error.message, }); } }; module.exports = { loginController, signupController, updateUserPassword };
Copyright ©2k19 -
Hexid
|
Tex7ure