import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; import { useTranslation } from 'react-i18next'; import AdminExternalAccountsContainer from '~/client/services/AdminExternalAccountsContainer'; import AppContainer from '~/client/services/AppContainer'; import { toastError } from '~/client/util/apiNotification'; import PaginationWrapper from '../PaginationWrapper'; import { withUnstatedContainers } from '../UnstatedUtils'; import ExternalAccountTable from './Users/ExternalAccountTable'; class ManageExternalAccount extends React.Component { constructor(props) { super(props); this.xss = window.xss; this.handleExternalAccountPage = this.handleExternalAccountPage.bind(this); } componentWillMount() { this.handleExternalAccountPage(1); } async handleExternalAccountPage(selectedPage) { try { await this.props.adminExternalAccountsContainer.retrieveExternalAccountsByPagingNum(selectedPage); } catch (err) { toastError(err); } } render() { const { t, adminExternalAccountsContainer } = this.props; const { activePage, totalAccounts, pagingLimit } = adminExternalAccountsContainer.state; const pager = ( ); return (

{t('admin:user_management.back_to_user_management')}

{t('admin:user_management.external_account_list')}

{(totalAccounts !== 0) ? ( <> {pager} {pager} ) : ( <> {t('admin:user_management.external_account_none')} )}
); } } ManageExternalAccount.propTypes = { t: PropTypes.func.isRequired, // i18next appContainer: PropTypes.instanceOf(AppContainer).isRequired, adminExternalAccountsContainer: PropTypes.instanceOf(AdminExternalAccountsContainer).isRequired, }; const ManageExternalAccountWrapperFC = (props) => { const { t } = useTranslation(); return ; }; const ManageExternalAccountWrapper = withUnstatedContainers(ManageExternalAccountWrapperFC, [AppContainer, AdminExternalAccountsContainer]); export default ManageExternalAccountWrapper;