Advertisement
Guest User

Untitled

a guest
Jun 18th, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.05 KB | None | 0 0
  1. app.post('/login', function(req,res){
  2. promise = new Promise(function(resolve, reject){
  3. let user = req.body.user;
  4. let password = req.body.password;
  5. datos = [];
  6. let respuesta;
  7. let keys;
  8. let exist = false;
  9. persist.get_all_users(
  10. function(err, reply) {
  11. keys = Object.keys(reply);
  12. datos = Object.values(reply);
  13. data = datos.map(function(element){
  14. return JSON.parse(element);
  15. });
  16. map = keys.map( function(x, i){
  17. return {"user": x, "passwd": data[i].password, "valido": data[i].valido, "role": data[i].role};
  18. }.bind(this));
  19. map.forEach(function(element) {
  20. if(element.user == user && element.valido == '0'){
  21. exist = true;
  22. reject(respuesta = false);
  23. }
  24. if(element.user == user && element.valido == '1'){
  25. exist = true;
  26. bcrypt.compare(password,element.passwd,function(err,res){
  27. if(res){
  28. req.session.logged = true;
  29. req.session.user = element; // Almacenamos el usuario
  30. var role_user = req.session.user.role;
  31. resolve(respuesta = role_user);
  32. }else{
  33. reject(respuesta = false);
  34. }
  35. });
  36. }
  37. });
  38.  
  39. setTimeout(function(){
  40. if(exist == false){
  41. reject(respuesta = false);
  42. }
  43. }, 100);
  44. });
  45. });
  46. promise.then(function(respuesta) {
  47. res.send(respuesta);
  48. }, function(respuesta){
  49. res.send(respuesta);
  50. });
  51.  
  52. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement