From 689cac535e45c47a4f603b236dc129dd456efcc9 Mon Sep 17 00:00:00 2001 From: Harrison Healey Date: Thu, 30 Mar 2017 12:46:47 -0400 Subject: 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 --- webapp/actions/user_actions.jsx | 62 ++++++++++++++++++++++++++--------------- 1 file changed, 40 insertions(+), 22 deletions(-) (limited to 'webapp/actions/user_actions.jsx') 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 ); } -- cgit v1.2.3-1-g7c22