From 137ade29d061e158543da814ecd0d06d7e992c1f Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Wed, 2 Nov 2016 14:38:34 -0400 Subject: PLT-4535/PLT-4503 Fix inactive users in searches and add option functionality to DB user search (#4413) * Add options to user database search * Fix inactive users showing up incorrectly in some user searches * Read JSON for searchUsers API into anonymous struct * Move anonymous struct to be a normal struct in model directory and upadte client to use it * Added clarification comment about slightly odd query condition in search --- webapp/components/admin_console/team_users.jsx | 7 +++++-- webapp/components/channel_invite_modal.jsx | 2 +- webapp/components/channel_members_modal.jsx | 2 +- webapp/components/more_direct_channels.jsx | 6 +++--- 4 files changed, 10 insertions(+), 7 deletions(-) (limited to 'webapp/components') diff --git a/webapp/components/admin_console/team_users.jsx b/webapp/components/admin_console/team_users.jsx index 1d0886737..3efb242ed 100644 --- a/webapp/components/admin_console/team_users.jsx +++ b/webapp/components/admin_console/team_users.jsx @@ -13,7 +13,7 @@ import UserStore from 'stores/user_store.jsx'; import {searchUsers, loadProfilesAndTeamMembers, loadTeamMembersForProfilesList} from 'actions/user_actions.jsx'; import {getTeamStats, getUser} from 'utils/async_client.jsx'; -import Constants from 'utils/constants.jsx'; +import {Constants, UserSearchOptions} from 'utils/constants.jsx'; import * as Utils from 'utils/utils.jsx'; import React from 'react'; @@ -145,10 +145,13 @@ export default class UserList extends React.Component { return; } + const options = {}; + options[UserSearchOptions.ALLOW_INACTIVE] = true; + searchUsers( term, this.props.params.team, - {}, + options, (users) => { this.setState({loading: true, search: true, users}); loadTeamMembersForProfilesList(users, this.props.params.team, this.loadComplete); diff --git a/webapp/components/channel_invite_modal.jsx b/webapp/components/channel_invite_modal.jsx index 14e02e04b..7f6ca4d32 100644 --- a/webapp/components/channel_invite_modal.jsx +++ b/webapp/components/channel_invite_modal.jsx @@ -105,7 +105,7 @@ export default class ChannelInviteModal extends React.Component { searchUsers( term, TeamStore.getCurrentId(), - {not_in_channel: this.props.channel.id}, + {not_in_channel_id: this.props.channel.id}, (users) => { this.setState({search: true, users}); } diff --git a/webapp/components/channel_members_modal.jsx b/webapp/components/channel_members_modal.jsx index 286a2243a..76ce535ad 100644 --- a/webapp/components/channel_members_modal.jsx +++ b/webapp/components/channel_members_modal.jsx @@ -117,7 +117,7 @@ export default class ChannelMembersModal extends React.Component { searchUsers( term, TeamStore.getCurrentId(), - {in_channel: this.props.channel.id}, + {in_channel_id: this.props.channel.id}, (users) => { this.setState({search: true, users}); } diff --git a/webapp/components/more_direct_channels.jsx b/webapp/components/more_direct_channels.jsx index 52e546cd2..7e57261b6 100644 --- a/webapp/components/more_direct_channels.jsx +++ b/webapp/components/more_direct_channels.jsx @@ -37,7 +37,7 @@ export default class MoreDirectChannels extends React.Component { this.loadComplete = this.loadComplete.bind(this); this.state = { - users: UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true), + users: UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true, true), loadingDMChannel: -1, listType: 'team', loading: false, @@ -111,7 +111,7 @@ export default class MoreDirectChannels extends React.Component { if (this.state.listType === 'any') { users = UserStore.getProfileList(); } else { - users = UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true); + users = UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true, true); } this.setState({ @@ -125,7 +125,7 @@ export default class MoreDirectChannels extends React.Component { if (listType === 'any') { users = UserStore.getProfileList(); } else { - users = UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true); + users = UserStore.getProfileListInTeam(TeamStore.getCurrentId(), true, true); } this.setState({ -- cgit v1.2.3-1-g7c22