Guest User

Untitled

a guest
Jan 8th, 2018
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1.  
  2. var Helper = require('../Helpers/Helper');
  3. var User = require('../Models/User');
  4. var jwt = require('jsonwebtoken'); // used to create, sign, and verify tokens
  5.  
  6.  
  7. exports.registerUser = function (req , res ) {
  8.  
  9. var email = req.body.email;
  10. var password = Helper.saltHashPassword(req.body.password);
  11. var age = req.body.age;
  12. var bio = req.body.bio;
  13. var bodyType = req.body.bodyType;
  14. var dob = Helper.stringToDate(req.body.dob,"yyyy-mm-dd")
  15.  
  16. User.create({email : email , passwordHash : password.passwordHash , passwordSalt : password.salt , age : age , bio : bio , bodyType : bodyType ,dob : dob} , function(err , safeUser){
  17. if (err){
  18. console.log(err.description);
  19. return ;
  20. }
  21. res.setHeader('Content-Type', 'application/json');
  22. res.send(JSON.stringify(safeUser));
  23. })
  24.  
  25. }
  26.  
  27. exports.userProfile = function (req,res, next) {
  28.  
  29. if (req.headers && req.headers.authorization && req.headers.authorization.split(' ')[0] == 'jwt'){
  30.  
  31. User.findOne({ accessToken : req.headers.authorization.split(' ')[1] } , function (err, user) {
  32. res.setHeader('Content-Type', 'application/json');
  33. if (user != null){
  34. return res.send(JSON.stringify(user))
  35. }else{
  36. return res.json(JSON.stringify({"success" : "0" , "message" : "Invalid access token"}));
  37. }
  38.  
  39. });
  40. }else{
  41. return res.json(JSON.stringify({"success" : "0" , "message" : "Invalid access token"}));
  42. }
  43.  
  44.  
  45. }
  46.  
  47.  
  48. exports.loginUser = function (req, res, next){
  49. // var password = Helper.saltHashPassword(req.body.password);
  50. console.log(typeof(req.body.email) );
  51. var token = jwt.sign({ email: req.body.email}, 'RESTFULAPIs') ;
  52. var user = User.findOne({"email" : req.body.email} ,function (err , user) {
  53. if (user == null){
  54. return res.send({success : 0 , message : "Invalid email password" });
  55. }
  56. user.accessToken = token;
  57. User.findOneAndUpdate({ email: req.body.email} , { $set : {email : token}} , {new : true} );
  58. return res.send(user);
  59. });
  60.  
  61. }
  62.  
  63.  
  64. exports.addAddress = function (req,res ,next) {
  65.  
  66.  
  67.  
  68. }
  69.  
  70.  
  71. exports.loginRequired = function(req, res, next) {
  72.  
  73. if (req.headers && req.headers.authorization && req.headers.authorization.split(' ')[0] == 'jwt'){
  74. jwt.verify(req.headers.authorization.split(' ')[1] , 'RESTFULAPIs',function(err , decode){
  75.  
  76. if (err){
  77. return res.status(401).json({ message: 'Unauthorized user!' });
  78. }
  79. if (decode) {
  80. next();
  81. } else {
  82. return res.status(401).json({ message: 'Unauthorized user!' });
  83. }
  84. });
  85.  
  86. }else{
  87. return res.status(401).json({ message: 'Unauthorized user req!' });
  88. }
  89.  
  90.  
  91. };
Add Comment
Please, Sign In to add comment