mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-01-21 15:03:12 +01:00
Merge branch 'master' of github.com:designcreateplay/NodeBB
This commit is contained in:
@@ -23,7 +23,8 @@ var user = require('./../user.js'),
|
||||
Admin.create_routes = function(app) {
|
||||
|
||||
(function() {
|
||||
var routes = ['categories', 'users', 'topics', 'settings', 'themes', 'twitter', 'facebook', 'gplus', 'redis', 'motd'];
|
||||
var routes = ['categories', 'users', 'topics', 'settings', 'themes', 'twitter', 'facebook', 'gplus', 'redis', 'motd',
|
||||
'users/latest', 'users/sort-posts', 'users/sort-reputation', 'users/search'];
|
||||
|
||||
for (var i=0, ii=routes.length; i<ii; i++) {
|
||||
(function(route) {
|
||||
|
||||
@@ -337,7 +337,9 @@ var utils = require('./../public/src/utils.js'),
|
||||
|
||||
function iterator(uid, callback) {
|
||||
User.getUserData(uid, function(userData) {
|
||||
data.push(userData);
|
||||
if(userData) {
|
||||
data.push(userData);
|
||||
}
|
||||
callback(null);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -47,7 +47,8 @@ var SocketIO = require('socket.io').listen(global.server, { log:false }),
|
||||
|
||||
userSockets[uid] = userSockets[uid] || [];
|
||||
userSockets[uid].push(socket);
|
||||
|
||||
if(uid)
|
||||
io.sockets.in('global').emit('api:user.isOnline', isUserOnline(uid));
|
||||
socket.join('uid_' + uid);
|
||||
});
|
||||
});
|
||||
@@ -61,8 +62,11 @@ var SocketIO = require('socket.io').listen(global.server, { log:false }),
|
||||
userSockets[uid].splice(index, 1);
|
||||
}
|
||||
|
||||
if(userSockets[uid].length === 0)
|
||||
if(userSockets[uid].length === 0) {
|
||||
delete users[sessionID];
|
||||
if(uid)
|
||||
io.sockets.in('global').emit('api:user.isOnline', isUserOnline(uid));
|
||||
}
|
||||
|
||||
for(var roomName in rooms) {
|
||||
|
||||
@@ -215,12 +219,16 @@ var SocketIO = require('socket.io').listen(global.server, { log:false }),
|
||||
user.reset.commit(socket, data.code, data.password);
|
||||
});
|
||||
|
||||
function isUserOnline(uid) {
|
||||
return !!userSockets[uid] && userSockets[uid].length > 0;
|
||||
}
|
||||
|
||||
socket.on('api:user.get_online_users', function(data) {
|
||||
var returnData = [];
|
||||
|
||||
for(var i=0; i<data.length; ++i) {
|
||||
var uid = data[i];
|
||||
if(userSockets[uid] && userSockets[uid].length > 0)
|
||||
if(isUserOnline(uid))
|
||||
returnData.push(uid);
|
||||
else
|
||||
returnData.push(0);
|
||||
@@ -228,6 +236,10 @@ var SocketIO = require('socket.io').listen(global.server, { log:false }),
|
||||
socket.emit('api:user.get_online_users', returnData);
|
||||
});
|
||||
|
||||
socket.on('api:user.isOnline', function(uid) {
|
||||
socket.emit('api:user.isOnline', isUserOnline(uid));
|
||||
});
|
||||
|
||||
socket.on('api:user.changePassword', function(data) {
|
||||
user.changePassword(socket, uid, data, function(success) {
|
||||
if(success) {
|
||||
|
||||
Reference in New Issue
Block a user