diff options
author | Corey Hulen <corey@hulen.com> | 2016-07-06 13:40:59 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-06 13:40:59 -0800 |
commit | d5f243dad694d6746ec2b6560a81212a78d8c975 (patch) | |
tree | 7f1de697c906ff909f26b739eebaa77f18edf790 /webapp/actions | |
parent | 3eee51f74e893f3182519ad0edb72dd5d8b107fd (diff) | |
download | chat-d5f243dad694d6746ec2b6560a81212a78d8c975.tar.gz chat-d5f243dad694d6746ec2b6560a81212a78d8c975.tar.bz2 chat-d5f243dad694d6746ec2b6560a81212a78d8c975.zip |
PLT-2863 adding remove user from team (#3429)
* PLT-2863 adding remove user from team
* PLT-2863 adding the client side UI
* Fixing trailing space
* Fixing reported issues
* Adding documentatino
* Switching to final javascript driver
Diffstat (limited to 'webapp/actions')
-rw-r--r-- | webapp/actions/global_actions.jsx | 7 | ||||
-rw-r--r-- | webapp/actions/websocket_actions.jsx | 17 |
2 files changed, 24 insertions, 0 deletions
diff --git a/webapp/actions/global_actions.jsx b/webapp/actions/global_actions.jsx index 4baed20c3..aa51f6f62 100644 --- a/webapp/actions/global_actions.jsx +++ b/webapp/actions/global_actions.jsx @@ -288,6 +288,13 @@ export function showInviteMemberModal() { }); } +export function showLeaveTeamModal() { + AppDispatcher.handleViewAction({ + type: ActionTypes.TOGGLE_LEAVE_TEAM_MODAL, + value: true + }); +} + export function showRegisterAppModal() { AppDispatcher.handleViewAction({ type: ActionTypes.TOGGLE_REGISTER_APP_MODAL, diff --git a/webapp/actions/websocket_actions.jsx b/webapp/actions/websocket_actions.jsx index 17f84638d..9d9cf62b7 100644 --- a/webapp/actions/websocket_actions.jsx +++ b/webapp/actions/websocket_actions.jsx @@ -135,6 +135,10 @@ function handleMessage(msg) { handleNewUserEvent(); break; + case SocketEvents.LEAVE_TEAM: + handleLeaveTeamEvent(msg); + break; + case SocketEvents.USER_ADDED: handleUserAddedEvent(msg); break; @@ -219,6 +223,19 @@ function handleNewUserEvent() { AsyncClient.getChannelExtraInfo(); } +function handleLeaveTeamEvent(msg) { + if (UserStore.getCurrentId() === msg.user_id) { + TeamStore.removeTeamMember(msg.team_id); + + // if the are on the team begin removed redirect them to the root + if (TeamStore.getCurrentId() === msg.team_id) { + browserHistory.push('/'); + } + } else if (TeamStore.getCurrentId() === msg.team_id) { + GlobalActions.emitProfilesForDmList(); + } +} + function handleDirectAddedEvent(msg) { AsyncClient.getChannel(msg.channel_id); AsyncClient.getDirectProfiles(); |