Files
coloquio_api/routes/loggin_persona.js
T
DanielRamirezGe d771721bb8 Archivo maximo
2020-02-19 19:52:15 -06:00

96 lines
3.1 KiB
JavaScript

const connection = require('../conf/connection.js');
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);
});
})
}
function depurado(cadena) {
if (cadena != null) {
cadena = cadena.replace(/'/g, "''");
cadena = cadena.replace(/;/g, "m");
return cadena;
} else
return null;
}
app.post('/loggin_persona', async(req, res) => {
try {
let data = req.body;
let usuario = depurado(data.correo);
//console.log(usuario, " lksaldksjdlasd");
console.log(usuario);
let cad = `select * from persona where correo_electronico='${usuario}';`;
console.log(cad);
let respuesta = query(cad);
// console.log(respuesta);
respuesta.then(async r => {
// console.log(r, r.length);
if (r.length == 0) {
res.status(400).json({ error: false, msj: "Usuario o contraseña invalidos" });
return;
} else {
let pass = data.password;
//console.log(pass);
let n_pasword = await bcrypt.hash(pass, 10);
//console.log(data);
// console.log(n_pasword);
let ban = bcrypt.compareSync(data.password, r[0].password);
if (ban == true) {
if (r[0].ponente == 1) {
try {
let c = `select * from trabajo where id_persona=${r[0].id_persona};`;
let q = await query(c);
if (q.length > 0) {
return res.status(200).json({ error: false, msj: "Bienvenido", paricipacion: 'Ponente', id_persona: r, trabajo: q });
} else {
return res.status(200).json({ error: false, msj: "Bienvenido", paricipacion: 'Ponente', id_persona: r });
}
} catch (err) {
console.log(err);
res.status(400).json({ error: true, msj: "error al verificarsi exite trabajo" });
return;
}
} else
res.status(200).json({ error: false, msj: "Bienvenido", paricipacion: 'Asistente', id_persona: r[0] });
return;
} else {
res.status(400).json({ error: false, msj: "Usuario o contraseña invalidos" });
return;
}
}
}).catch(err => {
res.status(400).json({ error: true, msj: err });
return;
})
} catch (err) {
console.log("afuera ", err);
res.status(400).json({ error: true, msj: err });
return;
}
});
module.exports = app