|
|
|
@ -12,7 +12,7 @@ const RoomManager = new function() { |
|
|
|
|
Object.keys(openedRooms).forEach(typeName => { |
|
|
|
|
const record = openedRooms[typeName]; |
|
|
|
|
if (record.active !== true || record.ready === true) { return; } |
|
|
|
|
const ready = CachedChatRoom.ready.get() && CachedChatSubscription.ready.get() === true; |
|
|
|
|
const ready = CachedChatRoom.ready.get() && RocketChat.mainReady.get(); |
|
|
|
|
if (ready !== true) { return; } |
|
|
|
|
const user = Meteor.user(); |
|
|
|
|
|
|
|
|
@ -256,18 +256,19 @@ Tracker.autorun(function() { |
|
|
|
|
return connectionWasOnline = connected; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
// Reload rooms after login
|
|
|
|
|
let currentUsername = undefined; |
|
|
|
|
Tracker.autorun(() => { |
|
|
|
|
const user = Meteor.user(); |
|
|
|
|
if ((currentUsername === undefined) && ((user != null ? user.username : undefined) != null)) { |
|
|
|
|
currentUsername = user.username; |
|
|
|
|
RoomManager.closeAllRooms(); |
|
|
|
|
return FlowRouter._current.route.callAction(FlowRouter._current); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
Meteor.startup(() => { |
|
|
|
|
|
|
|
|
|
// Reload rooms after login
|
|
|
|
|
let currentUsername = undefined; |
|
|
|
|
Tracker.autorun(() => { |
|
|
|
|
const user = Meteor.user(); |
|
|
|
|
if ((currentUsername === undefined) && ((user != null ? user.username : undefined) != null)) { |
|
|
|
|
currentUsername = user.username; |
|
|
|
|
RoomManager.closeAllRooms(); |
|
|
|
|
FlowRouter.reload(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
Meteor.startup(() => |
|
|
|
|
ChatMessage.find().observe({ |
|
|
|
|
removed(record) { |
|
|
|
|
if (RoomManager.getOpenedRoomByRid(record.rid) != null) { |
|
|
|
@ -282,8 +283,8 @@ Meteor.startup(() => |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
); |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const onDeleteMessageStream = msg => ChatMessage.remove({_id: msg._id}); |
|
|
|
|