summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2016-08-17 07:17:44 -0800
committerJoram Wilander <jwawilander@gmail.com>2016-08-17 11:17:44 -0400
commiteafc8028314805ded314648e02078cf596760197 (patch)
treea891483de272d1335b02e3aa1e994aece808cc0b
parentdba2deabb06aa5092bc634687294fa5c8cecd8bd (diff)
downloadchat-eafc8028314805ded314648e02078cf596760197.tar.gz
chat-eafc8028314805ded314648e02078cf596760197.tar.bz2
chat-eafc8028314805ded314648e02078cf596760197.zip
PLT-3881 Fix websocket errors after leaving the team (#3815)
-rw-r--r--api/team.go2
-rw-r--r--webapp/actions/websocket_actions.jsx2
-rw-r--r--webapp/stores/team_store.jsx4
3 files changed, 8 insertions, 0 deletions
diff --git a/api/team.go b/api/team.go
index 702ea96d1..20a0671da 100644
--- a/api/team.go
+++ b/api/team.go
@@ -331,6 +331,8 @@ func LeaveTeam(team *model.Team, user *model.User) *model.AppError {
if result := <-Srv.Store.Channel().RemoveMember(channel.Id, user.Id); result.Err != nil {
return result.Err
}
+
+ InvalidateCacheForChannel(channel.Id)
}
}
diff --git a/webapp/actions/websocket_actions.jsx b/webapp/actions/websocket_actions.jsx
index 9150e4111..9548a58dd 100644
--- a/webapp/actions/websocket_actions.jsx
+++ b/webapp/actions/websocket_actions.jsx
@@ -194,6 +194,8 @@ function handleLeaveTeamEvent(msg) {
// if the are on the team begin removed redirect them to the root
if (TeamStore.getCurrentId() === msg.team_id) {
+ TeamStore.setCurrentId('');
+ Client.setTeamId('');
browserHistory.push('/');
}
} else if (TeamStore.getCurrentId() === msg.team_id) {
diff --git a/webapp/stores/team_store.jsx b/webapp/stores/team_store.jsx
index 90cb66bb2..e59f0ca43 100644
--- a/webapp/stores/team_store.jsx
+++ b/webapp/stores/team_store.jsx
@@ -63,6 +63,10 @@ class TeamStoreClass extends EventEmitter {
return this.currentTeamId;
}
+ setCurrentId(id) {
+ this.currentTeamId = id;
+ }
+
getCurrent() {
const team = this.teams[this.currentTeamId];