summaryrefslogtreecommitdiffstats
path: root/web/react/utils/async_client.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'web/react/utils/async_client.jsx')
-rw-r--r--web/react/utils/async_client.jsx15
1 files changed, 14 insertions, 1 deletions
diff --git a/web/react/utils/async_client.jsx b/web/react/utils/async_client.jsx
index 88b5aa739..9cdbd73a4 100644
--- a/web/react/utils/async_client.jsx
+++ b/web/react/utils/async_client.jsx
@@ -82,7 +82,7 @@ export function getChannels(checkVersion) {
);
}
-export function getChannel(id) {
+export function getChannelAndAddUnreadMessages(id, unreadCount) {
if (isCallInProgress('getChannel' + id)) {
return;
}
@@ -97,6 +97,7 @@ export function getChannel(id) {
return;
}
+ data.channel.total_msg_count += (unreadCount || 0);
AppDispatcher.handleServerAction({
type: ActionTypes.RECIEVED_CHANNEL,
channel: data.channel,
@@ -110,6 +111,10 @@ export function getChannel(id) {
);
}
+export function getChannel(id) {
+ getChannelAndAddUnreadMessages(id, 0);
+}
+
export function updateLastViewedAt(id) {
let channelId;
if (id) {
@@ -131,6 +136,14 @@ export function updateLastViewedAt(id) {
channelId,
() => {
callTracker.updateLastViewed = 0;
+
+ var channel = ChannelStore.get(channelId);
+ var member = ChannelStore.getMember(channelId);
+ if (channel && member) {
+ member.msg_count = channel.total_msg_count;
+ member.last_viewed_at = utils.getTimestamp();
+ ChannelStore.setChannelMember(member);
+ }
},
(err) => {
callTracker.updateLastViewed = 0;