Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var User = module.exports = mongoose.model('User',UserSchema);
- module.exports.getUserByUsername = function(username, callback){
- var query = {username:username};
- User.findOne(query, callback);
- }
- module.exports.createUser = function(newUser, callback){
- User.getUserByUsername(newUser.username,function(err,username){
- if(err) throw err;
- // username already exists
- if(username){
- // How can handle this error?
- console.log('username already exists');
- } else{
- bcrypt.hash(newUser.password, 10, function(err,hash){
- if(err) throw err;
- newUser.password = hash;
- newUser.save(callback);
- });
- }
- });
- }
- router.post('/register',function(req,res,next){
- var username = req.body.username;
- var password = req.body.password;
- var newUser = new User({
- username:username,
- password:password
- });
- req.checkBody('username','Username field is required').notEmpty();
- req.checkBody('password','Password field is required').notEmpty();
- var errors = req.validationErrors();
- if(errors){
- res.render('register',{
- errors: errors,
- username: username,
- password: password
- });
- } else{
- User.createUser(newUser,function(err,user){
- if(err) throw err;
- req.flash('success','You are now registered and may log in');
- res.location('/');
- res.redirect('/');
- });
- }
- });
- // username already exists
- if(username) {
- callback(new Error('username already exists'));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement