diff options
author | Corey Hulen <corey@hulen.com> | 2016-08-17 07:17:44 -0800 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2016-08-17 11:17:44 -0400 |
commit | eafc8028314805ded314648e02078cf596760197 (patch) | |
tree | a891483de272d1335b02e3aa1e994aece808cc0b | |
parent | dba2deabb06aa5092bc634687294fa5c8cecd8bd (diff) | |
download | chat-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.go | 2 | ||||
-rw-r--r-- | webapp/actions/websocket_actions.jsx | 2 | ||||
-rw-r--r-- | webapp/stores/team_store.jsx | 4 |
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]; |