diff --git a/src/socket.io/index.js b/src/socket.io/index.js index befcb0cc0b..c1f2fb1b3d 100644 --- a/src/socket.io/index.js +++ b/src/socket.io/index.js @@ -93,8 +93,8 @@ Sockets.init = function(server) { uid: uid }); - socketUser.isOnline(socket, [uid], function(err, data) { - socket.broadcast.emit('user.isOnline', err, data[0]); + socketUser.isOnline(socket, uid, function(err, data) { + socket.broadcast.emit('user.isOnline', err, data); }); }); }); @@ -114,8 +114,8 @@ Sockets.init = function(server) { if (uid && Sockets.getUserSockets(uid).length <= 1) { db.sortedSetRemove('users:online', uid, function(err) { - socketUser.isOnline(socket, [uid], function(err, data) { - socket.broadcast.emit('user.isOnline', err, data[0]); + socketUser.isOnline(socket, uid, function(err, data) { + socket.broadcast.emit('user.isOnline', err, data); }); }); } diff --git a/src/socket.io/user.js b/src/socket.io/user.js index b3c7bf71dc..e0f536e085 100644 --- a/src/socket.io/user.js +++ b/src/socket.io/user.js @@ -81,7 +81,9 @@ SocketUser.reset.commit = function(socket, data, callback) { }; SocketUser.isOnline = function(socket, uid, callback) { - user.isOnline(uid, callback); + user.isOnline([uid], function(err, data) { + callback(err, Array.isArray(data) ? data[0] : null); + }); }; SocketUser.changePassword = function(socket, data, callback) { @@ -247,7 +249,7 @@ SocketUser.getOnlineUsers = function(socket, uids, callback) { return callback(new Error('[[error:invalid-data]]')); } - SocketUser.isOnline(socket, uids, function(err, userData) { + user.isOnline(uids, function(err, userData) { if (err) { return callback(err); } @@ -316,9 +318,9 @@ SocketUser.loadMore = function(socket, data, callback) { SocketUser.setStatus = function(socket, status, callback) { var server = require('./index'); user.setUserField(socket.uid, 'status', status, function(err) { - SocketUser.isOnline(socket, [socket.uid], function(err, data) { - server.server.sockets.emit('user.isOnline', err, data[0]); - callback(err, data[0]); + SocketUser.isOnline(socket, socket.uid, function(err, data) { + server.server.sockets.emit('user.isOnline', err, data); + callback(err, data); }); }); };