const { generateJWT, verifyJWT } = require("../middlewares/jwt"); const returndata = require("../middlewares/returndata"); const Logins = require("../models/logins"); const { createSession } = require("./process"); const { queryLogin } = require("./query"); const siginLogin = async function (email, password) { try { const login = await queryLogin({ email: email, password: password }); if (login.Success === false && !login.Data) { return login; }; const accountData = { id: login.Data.account.id, name: login.Data.account.name, surname: login.Data.account.surname, username: login.Data.account.username, email: email }; const tokenJWT = await generateJWT({ account: accountData }); if (login.Success === true) { return returndata(true, { token: tokenJWT.Data, account: { ...accountData } }, true); } else { return returndata(true, null, false); }; } catch (error) { console.log(error); return returndata(false, null, false); }; }; exports.siginLogin = siginLogin; const verifyLogin = async function (token) { try { jwtToken = token.split(' ')[1]; const verify = await verifyJWT(jwtToken); if (verify) { return returndata(true, verify.Data, true); } else { return returndata(true, null, false); } } catch (error) { return returndata(false, null, false); }; }; exports.verifyLogin = verifyLogin