mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-01 03:26:04 +01:00
fixed #129
This commit is contained in:
@@ -62,7 +62,7 @@ var user = require('./user.js'),
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// New User
|
// New User
|
||||||
user.create(handle, null, null, function(err, uid) {
|
user.create(handle, undefined, undefined, function(err, uid) {
|
||||||
if (err !== null) {
|
if (err !== null) {
|
||||||
callback(err);
|
callback(err);
|
||||||
} else {
|
} else {
|
||||||
@@ -98,7 +98,7 @@ var user = require('./user.js'),
|
|||||||
|
|
||||||
user.get_uid_by_email(email, function(uid) {
|
user.get_uid_by_email(email, function(uid) {
|
||||||
if (!uid) {
|
if (!uid) {
|
||||||
user.create(handle, null, email, function(err, uid) {
|
user.create(handle, undefined, email, function(err, uid) {
|
||||||
if (err !== null) {
|
if (err !== null) {
|
||||||
callback(err);
|
callback(err);
|
||||||
} else success(uid);
|
} else success(uid);
|
||||||
@@ -129,7 +129,7 @@ var user = require('./user.js'),
|
|||||||
|
|
||||||
user.get_uid_by_email(email, function(uid) {
|
user.get_uid_by_email(email, function(uid) {
|
||||||
if (!uid) {
|
if (!uid) {
|
||||||
user.create(name, null, email, function(err, uid) {
|
user.create(name, undefined, email, function(err, uid) {
|
||||||
if (err !== null) {
|
if (err !== null) {
|
||||||
callback(err);
|
callback(err);
|
||||||
} else success(uid);
|
} else success(uid);
|
||||||
|
|||||||
26
src/user.js
26
src/user.js
@@ -14,17 +14,19 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
var userslug = utils.slugify(username);
|
var userslug = utils.slugify(username);
|
||||||
|
|
||||||
username = username.trim();
|
username = username.trim();
|
||||||
email = email.trim();
|
if (email !== undefined) email = email.trim();
|
||||||
|
|
||||||
async.parallel([
|
async.parallel([
|
||||||
function(next) {
|
function(next) {
|
||||||
next(!utils.isEmailValid(email) ? new Error('Invalid Email!') : null);
|
if (email !== undefined) next(!utils.isEmailValid(email) ? new Error('Invalid Email!') : null);
|
||||||
|
else next();
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
next(!utils.isUserNameValid(username) ? new Error('Invalid Username!') : null);
|
next(!utils.isUserNameValid(username) ? new Error('Invalid Username!') : null);
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
next(!utils.isPasswordValid(password) ? new Error('Invalid Password!') : null);
|
if (password !== undefined) next(!utils.isPasswordValid(password) ? new Error('Invalid Password!') : null);
|
||||||
|
else next();
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
User.exists(userslug, function(exists) {
|
User.exists(userslug, function(exists) {
|
||||||
@@ -32,9 +34,11 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
function(next) {
|
function(next) {
|
||||||
User.isEmailAvailable(email, function(available) {
|
if (email !== undefined) {
|
||||||
next(!available ? new Error('Email taken!') : null);
|
User.isEmailAvailable(email, function(available) {
|
||||||
});
|
next(!available ? new Error('Email taken!') : null);
|
||||||
|
});
|
||||||
|
} else next();
|
||||||
}
|
}
|
||||||
], function(err, results) {
|
], function(err, results) {
|
||||||
if (err) return callback(err, 0); // FIXME: Maintaining the 0 for backwards compatibility. Do we need this?
|
if (err) return callback(err, 0); // FIXME: Maintaining the 0 for backwards compatibility. Do we need this?
|
||||||
@@ -52,7 +56,7 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
'location':'',
|
'location':'',
|
||||||
'birthday':'',
|
'birthday':'',
|
||||||
'website':'',
|
'website':'',
|
||||||
'email' : email,
|
'email' : email || '',
|
||||||
'signature':'',
|
'signature':'',
|
||||||
'joindate' : Date.now(),
|
'joindate' : Date.now(),
|
||||||
'picture': gravatar,
|
'picture': gravatar,
|
||||||
@@ -65,10 +69,12 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
});
|
});
|
||||||
|
|
||||||
RDB.set('username:' + username + ':uid', uid);
|
RDB.set('username:' + username + ':uid', uid);
|
||||||
RDB.set('email:' + email +':uid', uid);
|
|
||||||
RDB.set('userslug:'+ userslug +':uid', uid);
|
RDB.set('userslug:'+ userslug +':uid', uid);
|
||||||
|
|
||||||
User.sendConfirmationEmail(email);
|
if (email !== undefined) {
|
||||||
|
RDB.set('email:' + email +':uid', uid);
|
||||||
|
User.sendConfirmationEmail(email);
|
||||||
|
}
|
||||||
|
|
||||||
RDB.incr('usercount', function(err, count) {
|
RDB.incr('usercount', function(err, count) {
|
||||||
RDB.handle(err);
|
RDB.handle(err);
|
||||||
@@ -80,7 +86,7 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
|
|
||||||
io.sockets.emit('user.latest', {userslug: userslug, username: username});
|
io.sockets.emit('user.latest', {userslug: userslug, username: username});
|
||||||
|
|
||||||
if (password) {
|
if (password !== undefined) {
|
||||||
User.hashPassword(password, function(hash) {
|
User.hashPassword(password, function(hash) {
|
||||||
User.setUserField(uid, 'password', hash);
|
User.setUserField(uid, 'password', hash);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user