Merge branch 'master' of github.com:designcreateplay/NodeBB

v1.18.x
Julian Lam 12 years ago
commit be4d6761b1

@ -25,9 +25,9 @@ define(['taskbar'], function(taskbar) {
socket.emit('api:user.isOnline', chatModal.touid, function(data) {
if(data.online !== chatModal.online) {
if(data.online) {
module.appendChatMessage(chatModal, chatModal.username + ' has come online.\n', data.timestamp);
module.appendChatMessage(chatModal, chatModal.username + ' is currently online.\n', data.timestamp);
} else {
module.appendChatMessage(chatModal, chatModal.username + ' has gone offline.\n', data.timestamp);
module.appendChatMessage(chatModal, chatModal.username + ' is currently offline.\n', data.timestamp);
}
chatModal.online = data.online;
}
@ -38,7 +38,7 @@ define(['taskbar'], function(taskbar) {
function checkOnlineStatus(chatModal) {
if(chatModal.intervalId === 0) {
chatModal.intervalId = setInterval(function(){
chatModal.intervalId = setInterval(function() {
checkStatus(chatModal);
}, 1000);
}
@ -77,11 +77,8 @@ define(['taskbar'], function(taskbar) {
addSendHandler(chatModal);
checkStatus(chatModal, function(online) {
chatModal.online = online;
getChatMessages(chatModal, function() {
checkOnlineStatus(chatModal);
});
getChatMessages(chatModal, function() {
checkOnlineStatus(chatModal);
});
taskbar.push('chat', chatModal.attr('UUID'), {title:'chat with ' + username});

@ -67,6 +67,37 @@ function upgradeUser(uid, callback) {
});
}
function upgradeUserHash(uid, callback) {
user.getUserFields(uid, ['username', 'userslug', 'email'], function(err, userData) {
if(err)
return callback(err);
async.parallel([
function(next) {
if(userData.username)
RDB.hset('username:uid', userData.username, uid, next);
else
next(null);
},
function(next) {
if(userData.userslug)
RDB.hset('userslug:uid', userData.userslug, uid, next);
else
next(null);
},
function(next) {
if(userData.email)
RDB.hset('email:uid', userData.email, uid, next);
else
next(null);
}
], function(err, result) {
callback(err);
});
});
}
function upgradeAdmins(callback) {
Groups.getGidFromName('Administrators', function(err, gid) {
if (!err && !gid) {
@ -80,7 +111,7 @@ function upgradeAdmins(callback) {
Groups.create('Administrators', 'Forum Administrators', next);
}
], function(err, results) {
var gid = results[1].gid;
var gid = results[1].gid;
async.each(results[0], function(uid, next) {
Groups.join(gid, uid, next);
@ -130,6 +161,24 @@ exports.upgrade = function() {
});
},
function upgradeUserHashes(next) {
winston.info('upgrading user hashes');
RDB.zrange('users:joindate', 0, -1, function(err, uids) {
if(err)
return next(err);
async.each(uids, upgradeUserHash, function(err) {
if(!err) {
winston.info('upgraded user hashes');
next(null, null);
} else {
next(err, null);
}
});
});
},
upgradeAdmins
];

@ -76,11 +76,11 @@ var utils = require('./../public/src/utils.js'),
'showemail': 0
});
RDB.set('username:' + username + ':uid', uid);
RDB.set('userslug:'+ userslug +':uid', uid);
RDB.hset('username:uid', username, uid);
RDB.hset('userslug:uid', userslug, uid);
if (email !== undefined) {
RDB.set('email:' + email +':uid', uid);
RDB.hset('email:uid', email, uid);
User.sendConfirmationEmail(email);
}
@ -114,9 +114,10 @@ var utils = require('./../public/src/utils.js'),
console.log('deleting uid ' + uid);
User.getUserData(uid, function(err, data) {
RDB.del('username:' + data['username'] + ':uid');
RDB.del('email:' + data['email'] +':uid');
RDB.del('userslug:'+ data['userslug'] +':uid');
RDB.hdel('username:uid', data['username']);
RDB.hdel('email:uid', data['email']);
RDB.hdel('userslug:uid', data['userslug']);
RDB.del('user:' + uid);
RDB.del('followers:' + uid);
@ -250,8 +251,8 @@ var utils = require('./../public/src/utils.js'),
if(err)
return next(err);
RDB.del('email:' + userData['email'] + ':uid');
RDB.set('email:' + data['email'] + ':uid', uid);
RDB.hdel('email:uid', userData['email']);
RDB.hset('email:uid', data['email'], uid);
User.setUserField(uid, field, data[field]);
if(userData.picture !== userData.uploadedpicture) {
returnData.picture = gravatarpicture;
@ -275,7 +276,7 @@ var utils = require('./../public/src/utils.js'),
}
User.isEmailAvailable = function(email, callback) {
RDB.exists('email:' + email + ':uid' , function(err, exists) {
RDB.hexists('email:uid', email, function(err, exists) {
callback(err, !exists);
});
}
@ -627,7 +628,7 @@ var utils = require('./../public/src/utils.js'),
}
User.get_uid_by_username = function(username, callback) {
RDB.get('username:' + username + ':uid', function(err, data) {
RDB.hget('username::uid', username, function(err, data) {
if (err) {
RDB.handle(err);
}
@ -636,7 +637,7 @@ var utils = require('./../public/src/utils.js'),
};
User.get_uid_by_userslug = function(userslug, callback) {
RDB.get('userslug:' + userslug + ':uid', function(err, data) {
RDB.hget('userslug:uid', userslug, function(err, data) {
if (err) {
RDB.handle(err);
}
@ -683,7 +684,7 @@ var utils = require('./../public/src/utils.js'),
}
User.get_uid_by_email = function(email, callback) {
RDB.get('email:' + email + ':uid', function(err, data) {
RDB.hget('email:uid', email, function(err, data) {
if (err) {
RDB.handle(err);
}

Loading…
Cancel
Save