84 lines
2.3 KiB
JavaScript
84 lines
2.3 KiB
JavaScript
const connection = require('../conf/connection');
|
|
const express = require('express');
|
|
const bcrypt = require('bcrypt');
|
|
var app = express();
|
|
|
|
function query(consulta) {
|
|
return new Promise(function(resolve, reject) {
|
|
connection.query(`${consulta}`, (error, results, files) => {
|
|
if (error) reject(error);
|
|
resolve(results);
|
|
});
|
|
})
|
|
}
|
|
|
|
|
|
app.post('/loggin', async(req, res) => {
|
|
|
|
var aux = req.body.usuario;
|
|
aux = aux.toLowerCase();
|
|
let usuario = req.body.usuario;
|
|
var password = req.body.password;
|
|
var pass = await bcrypt.hash(password, 10);
|
|
console.log(usuario, " ", pass, " ", password);
|
|
var text = true;
|
|
for (let i = 0; i < aux.length; i++) {
|
|
if ((aux[i] < 'a' || aux[i] > 'z') && aux[i] != '_') {
|
|
text = false;
|
|
break;
|
|
}
|
|
}
|
|
|
|
let caadena = `select * from usuario;`
|
|
let resuesta = await query(caadena)
|
|
console.log("esta es la respuesta", resuesta);
|
|
|
|
|
|
if (text == false) {
|
|
res.status(400).json({ err: true, msj: "Correo o contraseña invalidos" });
|
|
false;
|
|
}
|
|
|
|
let password_consulta;
|
|
try {
|
|
|
|
let select = `select * from usuario where usuario="${usuario}";`;
|
|
|
|
password_consulta = query(select);
|
|
} catch (error) {
|
|
res.status(400).json({ error: true, msj: "Error en la consulta en del usuario" });
|
|
return;
|
|
}
|
|
let exite;
|
|
let comparar;
|
|
let id;
|
|
await password_consulta.then(function(v) {
|
|
existe = v.length;
|
|
console.log(existe);
|
|
if (existe == 1) {
|
|
comparar = v[0].password
|
|
id = v[0].id_usuario;
|
|
}
|
|
})
|
|
if (existe == 0) {
|
|
res.status(400).json({ err: true, mjs: 'Correo o contraseña invalidos' });
|
|
return;
|
|
}
|
|
// var pass = await bcrypt.hash(password, 10);
|
|
//console.log(pass);
|
|
console.log(comparar);
|
|
|
|
let correcto = bcrypt.compareSync(password, comparar);
|
|
if (correcto == true) {
|
|
res.status(200).json({ err: false, mjs: `Bienvenido`, id_usuario: id });
|
|
return;
|
|
} else {
|
|
res.status(400).json({ err: true, mjs: 'Correo o contraseña invalidos' });
|
|
return;
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
module.exports = app; |