import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; import { withTranslation } from 'react-i18next'; import PaginationWrapper from '../PaginationWrapper'; import { createSubscribedElement } from '../UnstatedUtils'; import { toastError } from '../../util/apiNotification'; import AppContainer from '../../services/AppContainer'; import AdminUsersContainer from '../../services/AdminUsersContainer'; import PasswordResetModal from './Users/PasswordResetModal'; import InviteUserControl from './Users/InviteUserControl'; import UserTable from './Users/UserTable'; class UserManagement extends React.Component { constructor(props) { super(); this.handlePage = this.handlePage.bind(this); } componentWillMount() { this.handlePage(1); } async handlePage(selectedPage) { try { await this.props.adminUsersContainer.retrieveUsersByPagingNum(selectedPage); } catch (err) { toastError(err); } } render() { const { t, adminUsersContainer } = this.props; const pager = (
); return ( {adminUsersContainer.state.userForPasswordResetModal && }

{ t('user_management.external_account') }

{ t('User_Management') }

{pager} {pager}
); } } UserManagement.propTypes = { t: PropTypes.func.isRequired, // i18next appContainer: PropTypes.instanceOf(AppContainer).isRequired, adminUsersContainer: PropTypes.instanceOf(AdminUsersContainer).isRequired, }; const UserManagementWrapper = (props) => { return createSubscribedElement(UserManagement, props, [AppContainer, AdminUsersContainer]); }; export default withTranslation()(UserManagementWrapper);