Advertisement
Guest User

Untitled

a guest
Nov 17th, 2016
360
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. { [ValidationError: User validation failed]
  2. message: 'User validation failed',
  3. name: 'ValidationError',
  4. errors:
  5. { mobile:
  6. { [ValidatorError: Path `mobile` is required.]
  7. properties: [Object],
  8. message: 'Path `mobile` is required.',
  9. name: 'ValidatorError',
  10. kind: 'required',
  11. path: 'mobile',
  12. value: undefined } } }
  13.  
  14. var mongoose = require('mongoose');
  15. var Schema = mongoose.Schema;
  16. var bcrypt = require('bcrypt-nodejs');
  17. var passportLocalMongoose = require('passport-local-mongoose');
  18.  
  19. var UserSchema = new Schema({
  20. name: String,
  21. email: {type: String, required: true, select: true},
  22. mobile: {type: String, required: true, select: true},
  23. password: {type: String, required: true, select: true},
  24. active:{ type: 'Boolean', default: false},
  25. generatedOtp:{ type: String},
  26. resetPasswordToken: String,
  27. resetPasswordExpires: Date,
  28. });
  29.  
  30. UserSchema.pre('save', function (next) {
  31. var user = this;
  32.  
  33. if(!user.isModified('password')) return next();
  34.  
  35.  
  36. bcrypt.hash(user.password, null, null, function(err, hash){
  37. if(err) return next(err);
  38.  
  39. user.password = hash;
  40. next();
  41. });
  42. });
  43.  
  44. UserSchema.methods.comparePassword = function(password){
  45. var user = this;
  46. return bcrypt.compareSync(password, user.password);
  47. }
  48. UserSchema.plugin(passportLocalMongoose);
  49. module.exports = mongoose.model('User', UserSchema);
  50.  
  51. passport.use('local-signup',new LocalStrategy({
  52. usernameField: 'email',
  53. passwordField: 'password',
  54. passReqToCallback : true},
  55. function(req, username, email, password, mobile, generatedOtp, done) {
  56. console.log("second");
  57. User.findOne({ email : email}, function(err, user) {
  58. if (err)
  59. return done(err);
  60.  
  61. if (user) {
  62. return done(null, false, {message: 'That email is already taken.'});
  63. } else {
  64. var secret = "mysecretkey";
  65. var code = otp.generate(secret);
  66. console.log(code);
  67. var newUser = new User();
  68. newUser.name = username;
  69. newUser.email = email;
  70. newUser.password = password;
  71. newUser.mobile = mobile;
  72. generatedOtp: code;
  73.  
  74.  
  75. newUser.save(function(err, res) {
  76. if(err) {
  77. console.log(err);
  78.  
  79. } else {
  80. console.log("right");
  81. }
  82. });
  83. }
  84. });
  85. }
  86. ));
  87.  
  88.  
  89.  
  90. router.post('/pages/auth/register', passport.authenticate('local-signup', {
  91. successRedirect : '/pages/auth/login',
  92. failureRedirect : '/pages/auth/register',
  93. failureFlash : true
  94. }));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement