Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var mongoose = require('mongoose');
- var bcrypt = require('bcrypt-nodejs');
- var UserSchema = new mongoose.Schema({
- email: {
- type: string,
- unique: true,
- required: true,
- trim: true
- },
- password: {
- type: string,
- required: true
- },
- authtokens: {
- type: [{ type: mongoose.Schema.Types.ObjectId, ref: 'AuthToken' }]
- }
- });
- //hashing a password before saving it to the database
- UserSchema.pre('save', function (next) {
- if (this.isNew) {
- bcrypt.gensalt(10, function(err, salt) {
- if (err) return next(err);
- bcrypt.hash(this.password, salt, null, function (err, hash){
- if (err) return next(err);
- this.password = hash;
- console.log('user.password ', this.password);
- next();
- });
- });
- } else next();
- });
- 'use strict';
- var mongoose = require('mongoose'),
- User = mongoose.model('User'),
- AuthToken = mongoose.model('AuthToken');
- exports.createUser = function(req, res, next) {
- if (req.body.email && req.body.password && req.body.passwordConf) {
- var userData = {
- email: req.body.email,
- password: req.body.password,
- passwordConf: req.body.passwordConf
- };
- //use schema.create to insert data into the db
- User.create(userData, function (err, user) {
- console.log('user created ', user.password);
- if (err) {
- return next(err);
- } else {
- return res.redirect('/profile');
- }
- });
- } else {
- var err = new Error("Missing parameters");
- err.status = 400;
- next(err);
- }
- };
- user.password $2a$10$wO.6TPUm5b1j6lvHdCi/JOTeEXHWhYernWU.ZzA3hfYhyWoOeugcq
- user created password
Add Comment
Please, Sign In to add comment