diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2017-03-30 12:46:47 -0400 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2017-03-30 09:46:47 -0700 |
commit | 689cac535e45c47a4f603b236dc129dd456efcc9 (patch) | |
tree | 767ef80b310d6d073840bd5216da38c439f6e193 /webapp/actions | |
parent | 9a9729f22fea7275637eafb4046900c9f372ec56 (diff) | |
download | chat-689cac535e45c47a4f603b236dc129dd456efcc9.tar.gz chat-689cac535e45c47a4f603b236dc129dd456efcc9.tar.bz2 chat-689cac535e45c47a4f603b236dc129dd456efcc9.zip |
PLT-2713/PLT-6028 Added System Users list to System Console (#5882)
* PLT-2713 Added ability for admins to list users not in any team
* Updated style of unit test
* Split SearchableUserList to give better control over its properties
* Added users without any teams to the user store
* Added ManageUsers page
* Renamed ManageUsers to SystemUsers
* Added ability to search by user id in SystemUsers page
* Added SystemUsersDropdown
* Removed unnecessary injectIntl
* Created TeamUtils
* Reduced scope of system console heading CSS
* Added team filter to TeamAnalytics page
* Updated admin console sidebar
* Removed unnecessary TODO
* Removed unused reference to deleted modal
* Fixed system console sidebar not scrolling on first load
* Fixed TeamAnalytics page not rendering on first load
* Fixed chart.js throwing an error when switching between teams
* Changed TeamAnalytics header to show the team's display name
* Fixed appearance of TeamAnalytics and SystemUsers on small screen widths
* Fixed placement of 'No users found' message
* Fixed teams not appearing in SystemUsers on first load
* Updated user count text for SystemUsers
* Changed search by id fallback to trigger less often
* Fixed SystemUsers list items not updating when searching
* Fixed localization strings for SystemUsers page
Diffstat (limited to 'webapp/actions')
-rw-r--r-- | webapp/actions/global_actions.jsx | 3 | ||||
-rw-r--r-- | webapp/actions/user_actions.jsx | 62 |
2 files changed, 42 insertions, 23 deletions
diff --git a/webapp/actions/global_actions.jsx b/webapp/actions/global_actions.jsx index 1f22cd773..95d4d5676 100644 --- a/webapp/actions/global_actions.jsx +++ b/webapp/actions/global_actions.jsx @@ -25,6 +25,7 @@ const ActionTypes = Constants.ActionTypes; import Client from 'client/web_client.jsx'; import * as AsyncClient from 'utils/async_client.jsx'; import WebSocketClient from 'client/web_websocket_client.jsx'; +import {sortTeamsByDisplayName} from 'utils/team_utils.jsx'; import * as Utils from 'utils/utils.jsx'; import en from 'i18n/en.json'; @@ -594,7 +595,7 @@ export function redirectUserToDefaultTeam() { } if (myTeams.length > 0) { - myTeams = myTeams.sort(Utils.sortTeamsByDisplayName); + myTeams = myTeams.sort(sortTeamsByDisplayName); teamId = myTeams[0].id; } } diff --git a/webapp/actions/user_actions.jsx b/webapp/actions/user_actions.jsx index 3b1fa96a8..b9d4ec376 100644 --- a/webapp/actions/user_actions.jsx +++ b/webapp/actions/user_actions.jsx @@ -133,6 +133,29 @@ export function loadTeamMembersForProfilesList(profiles, teamId = TeamStore.getC loadTeamMembersForProfiles(list, teamId, success, error); } +export function loadProfilesWithoutTeam(page, perPage, success, error) { + Client.getProfilesWithoutTeam( + page, + perPage, + (data) => { + AppDispatcher.handleServerAction({ + type: ActionTypes.RECEIVED_PROFILES_WITHOUT_TEAM, + profiles: data, + page + }); + + loadStatusesForProfilesMap(data); + }, + (err) => { + AsyncClient.dispatchError(err, 'getProfilesWithoutTeam'); + + if (error) { + error(err); + } + } + ); +} + function loadTeamMembersForProfiles(userIds, teamId, success, error) { Client.getTeamMembersByIds( teamId, @@ -580,20 +603,16 @@ export function updateUserNotifyProps(data, success, error) { export function updateUserRoles(userId, newRoles, success, error) { Client.updateUserRoles( - userId, - newRoles, - () => { - AsyncClient.getUser(userId); - - if (success) { - success(); - } - }, - (err) => { - if (error) { - error(err); - } - } + userId, + newRoles, + () => { + AsyncClient.getUser( + userId, + success, + error + ); + }, + error ); } @@ -658,18 +677,17 @@ export function checkMfa(loginId, success, error) { export function updateActive(userId, active, success, error) { Client.updateActive(userId, active, - () => { - AsyncClient.getUser(userId); + (data) => { + AppDispatcher.handleServerAction({ + type: ActionTypes.RECEIVED_PROFILE, + profile: data + }); if (success) { - success(); + success(data); } }, - (err) => { - if (error) { - error(err); - } - } + error ); } |