From 4834b68ad107c29ada482f6f79c806366574ad40 Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Mon, 24 Oct 2016 12:00:42 -0400 Subject: Filter out non-team members from invite to channel modal (#4312) --- webapp/components/channel_invite_modal.jsx | 2 -- webapp/components/channel_members_modal.jsx | 2 -- webapp/components/member_list_team.jsx | 2 -- webapp/components/team_members_dropdown.jsx | 11 +++++++++++ 4 files changed, 11 insertions(+), 6 deletions(-) (limited to 'webapp/components') diff --git a/webapp/components/channel_invite_modal.jsx b/webapp/components/channel_invite_modal.jsx index 99a4b9313..14e02e04b 100644 --- a/webapp/components/channel_invite_modal.jsx +++ b/webapp/components/channel_invite_modal.jsx @@ -46,7 +46,6 @@ export default class ChannelInviteModal extends React.Component { TeamStore.addStatsChangeListener(this.onChange); ChannelStore.addStatsChangeListener(this.onChange); UserStore.addNotInChannelChangeListener(this.onChange); - UserStore.addStatusesChangeListener(this.onChange); this.onChange(); AsyncClient.getProfilesNotInChannel(this.props.channel.id, 0); @@ -55,7 +54,6 @@ export default class ChannelInviteModal extends React.Component { TeamStore.removeStatsChangeListener(this.onChange); ChannelStore.removeStatsChangeListener(this.onChange); UserStore.removeNotInChannelChangeListener(this.onChange); - UserStore.removeStatusesChangeListener(this.onChange); } } diff --git a/webapp/components/channel_members_modal.jsx b/webapp/components/channel_members_modal.jsx index 511209b42..561ae595f 100644 --- a/webapp/components/channel_members_modal.jsx +++ b/webapp/components/channel_members_modal.jsx @@ -47,14 +47,12 @@ export default class ChannelMembersModal extends React.Component { if (!this.props.show && nextProps.show) { ChannelStore.addStatsChangeListener(this.onChange); UserStore.addInChannelChangeListener(this.onChange); - UserStore.addStatusesChangeListener(this.onChange); this.onChange(); AsyncClient.getProfilesInChannel(this.props.channel.id, 0); } else if (this.props.show && !nextProps.show) { ChannelStore.removeStatsChangeListener(this.onChange); UserStore.removeInChannelChangeListener(this.onChange); - UserStore.removeStatusesChangeListener(this.onChange); } } diff --git a/webapp/components/member_list_team.jsx b/webapp/components/member_list_team.jsx index a3e43af28..e457e48a4 100644 --- a/webapp/components/member_list_team.jsx +++ b/webapp/components/member_list_team.jsx @@ -38,7 +38,6 @@ export default class MemberListTeam extends React.Component { componentDidMount() { UserStore.addInTeamChangeListener(this.onChange); - UserStore.addStatusesChangeListener(this.onChange); TeamStore.addChangeListener(this.onChange); TeamStore.addStatsChangeListener(this.onStatsChange); @@ -48,7 +47,6 @@ export default class MemberListTeam extends React.Component { componentWillUnmount() { UserStore.removeInTeamChangeListener(this.onChange); - UserStore.removeStatusesChangeListener(this.onChange); TeamStore.removeChangeListener(this.onChange); TeamStore.removeStatsChangeListener(this.onStatsChange); } diff --git a/webapp/components/team_members_dropdown.jsx b/webapp/components/team_members_dropdown.jsx index 3b6bc87f3..ea50ce086 100644 --- a/webapp/components/team_members_dropdown.jsx +++ b/webapp/components/team_members_dropdown.jsx @@ -37,6 +37,7 @@ export default class TeamMembersDropdown extends React.Component { role: null }; } + handleMakeMember() { const me = UserStore.getCurrentUser(); if (this.props.user.id === me.id) { @@ -56,11 +57,14 @@ export default class TeamMembersDropdown extends React.Component { ); } } + handleRemoveFromTeam() { removeUserFromTeam( this.props.teamMember.team_id, this.props.user.id, () => { + UserStore.removeProfileFromTeam(this.props.teamMember.team_id, this.props.user.id); + UserStore.emitInTeamChange(); AsyncClient.getTeamStats(this.props.teamMember.team_id); }, (err) => { @@ -68,6 +72,7 @@ export default class TeamMembersDropdown extends React.Component { } ); } + handleMakeActive() { Client.updateActive(this.props.user.id, true, () => { @@ -80,6 +85,7 @@ export default class TeamMembersDropdown extends React.Component { } ); } + handleMakeNotActive() { Client.updateActive(this.props.user.id, false, () => { @@ -92,6 +98,7 @@ export default class TeamMembersDropdown extends React.Component { } ); } + handleMakeAdmin() { const me = UserStore.getCurrentUser(); if (this.props.user.id === me.id) { @@ -111,6 +118,7 @@ export default class TeamMembersDropdown extends React.Component { ); } } + handleDemote(user, role, newRole) { this.setState({ serverError: this.state.serverError, @@ -120,6 +128,7 @@ export default class TeamMembersDropdown extends React.Component { newRole }); } + handleDemoteCancel() { this.setState({ serverError: null, @@ -129,6 +138,7 @@ export default class TeamMembersDropdown extends React.Component { newRole: null }); } + handleDemoteSubmit() { Client.updateTeamMemberRoles( this.props.teamMember.team_id, @@ -150,6 +160,7 @@ export default class TeamMembersDropdown extends React.Component { } ); } + render() { let serverError = null; if (this.state.serverError) { -- cgit v1.2.3-1-g7c22