leaveRoom method, small fixes

v1.18.x
barisusakli 9 years ago
parent f8a6666e1a
commit 8fab270852

@ -261,6 +261,13 @@ app.cacheBuster = null;
});
};
app.newChat = function (touid) {
if (!app.user.uid) {
return app.alertError('[[error:not-logged-in]]');
}
};
var titleObj = {
active: false,
interval: undefined,

@ -46,7 +46,7 @@ chatsController.get = function(req, res, callback) {
since: 'recent',
isNew: false
}),
allowed: async.apply(messaging.canMessage, req.user.uid, req.params.roomid)
allowed: async.apply(messaging.canMessageRoom, req.user.uid, req.params.roomid)
}, next);
}
], function(err, data) {

@ -23,8 +23,6 @@ var async = require('async'),
require('./messaging/unread')(Messaging);
require('./messaging/notifications')(Messaging);
Messaging.notifyQueue = {}; // Only used to notify a user of a new chat message, see Messaging.notifyUser
var terms = {
day: 86400000,
week: 604800000,

@ -12,6 +12,8 @@ var sockets = require('../socket.io');
module.exports = function(Messaging) {
Messaging.notifyQueue = {}; // Only used to notify a user of a new chat message, see Messaging.notifyUser
Messaging.notifyUsersInRoom = function(fromUid, roomId, messageObj) {
Messaging.getUidsInRoom(roomId, 0, -1, function(err, uids) {
if (err) {

@ -45,6 +45,17 @@ module.exports = function(Messaging) {
], callback);
};
Messaging.leaveRoom = function(uid, roomId, callback) {
async.waterfall([
function (next) {
db.sortedSetRemove('chat:room:' + roomId + ':uids', uid, next);
},
function (next) {
db.sortedSetRemove('uid:' + uid + ':chat:rooms', roomId, next);
}
], callback);
};
Messaging.getUidsInRoom = function(roomId, start, stop, callback) {
db.getSortedSetRange('chat:room:' + roomId + ':uids', start, stop, callback);
};

@ -128,7 +128,7 @@ SocketModules.chats.delete = function(socket, data, callback) {
};
SocketModules.chats.canMessage = function(socket, roomId, callback) {
Messaging.canMessage(socket.uid, roomId, function(err, allowed) {
Messaging.canMessageRoom(socket.uid, roomId, function(err, allowed) {
callback(!allowed ? new Error('[[error:chat-restricted]]') : undefined);
});
};

Loading…
Cancel
Save