Fixed a bug with the register logic

This commit is contained in:
Matthew Patrick 2021-11-15 16:01:24 +07:00
parent 067130215d
commit 4df4ce0494

View file

@ -47,80 +47,81 @@ exports.register = async function (req, res) {
) { ) {
// Empty Fields // Empty Fields
res.render("pages/register-error"); res.render("pages/register-error");
} } else {
db_connect.query( db_connect.query(
"SELECT * FROM users WHERE email = ?", "SELECT * FROM users WHERE email = ?",
[req.body.email], [req.body.email],
async function (error, response, fields) { async function (error, response, fields) {
if (error) { if (error) {
// Error // Error
res.render("pages/register-error");
} else {
if (response.length > 0) {
// Email Exists
res.render("pages/register-error"); res.render("pages/register-error");
} else { } else {
const encryptedPassword = await bcrypt.hash( if (response.length > 0) {
req.body.password, // Email Exists
saltRounds res.render("pages/register-error");
); } else {
var users = { const encryptedPassword = await bcrypt.hash(
first_name: req.body.first_name, req.body.password,
last_name: req.body.last_name, saltRounds
email: req.body.email, );
password: encryptedPassword, var users = {
}; first_name: req.body.first_name,
db_connect.query( last_name: req.body.last_name,
"INSERT INTO users SET ?", email: req.body.email,
users, password: encryptedPassword,
function (error, response, fields) { };
if (error) { db_connect.query(
console.log("An error has occured...", error); "INSERT INTO users SET ?",
// Error users,
res.render("pages/register-error"); function (error, response, fields) {
} else { if (error) {
var email = req.body.email; console.log("An error has occured...", error);
db_connect.query( // Error
'SELECT * FROM users WHERE email ="' + email + '"', res.render("pages/register-error");
function (err, result) { } else {
if (err) throw err; var email = req.body.email;
console.log(result[0]); db_connect.query(
if (result.length > 0) { 'SELECT * FROM users WHERE email ="' + email + '"',
var token = randtoken.generate(20); function (err, result) {
if (result[0].verify == 0) { if (err) throw err;
var sent = sendEmail(email, token); console.log(result[0]);
if (sent != "0") { if (result.length > 0) {
var data = { var token = randtoken.generate(20);
token: token, if (result[0].verify == 0) {
}; var sent = sendEmail(email, token);
db_connect.query( if (sent != "0") {
'UPDATE users SET ? WHERE email ="' + email + '"', var data = {
data, token: token,
function (err, result) { };
if (err) throw err; db_connect.query(
} 'UPDATE users SET ? WHERE email ="' + email + '"',
); data,
// Success and has been sent function (err, result) {
res.render("pages/register-verification-sent"); if (err) throw err;
} else { }
// Error );
res.render("pages/register-error"); // Success and has been sent
res.render("pages/register-verification-sent");
} else {
// Error
res.render("pages/register-error");
}
} }
} else {
console.log("2");
// Email isnt registered
res.render("pages/register-error");
} }
} else {
console.log("2");
// Email isnt registered
res.render("pages/register-error");
} }
} );
); }
} }
} );
); }
} }
} }
} );
); }
}; };
exports.login = async function (req, res) { exports.login = async function (req, res) {