ManageExternalAccount.jsx 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import React, { Fragment } from 'react';
  2. import PropTypes from 'prop-types';
  3. import { withTranslation } from 'react-i18next';
  4. import { createSubscribedElement } from '../../UnstatedUtils';
  5. import AppContainer from '../../../services/AppContainer';
  6. class ManageExternalAccount extends React.Component {
  7. constructor(props) {
  8. super(props);
  9. this.state = {
  10. };
  11. }
  12. render() {
  13. const { t } = this.props;
  14. return (
  15. <Fragment>
  16. <p>
  17. <a className="btn btn-default" href="/admin/users">
  18. <i className="icon-fw ti-arrow-left" aria-hidden="true"></i>
  19. { t('user_management.back_to_user_management') }
  20. </a>
  21. </p>
  22. <h2>{ t('user_management.external_account_list') }</h2>
  23. <table className="table table-bordered table-user-list">
  24. <thead>
  25. <tr>
  26. <th width="120px">{ t('user_management.authentication_provider') }</th>
  27. <th><code>accountId</code></th>
  28. <th>{ t('user_management.related_username', 'username') }</th>
  29. <th>
  30. { t('user_management.password_setting') }
  31. <div
  32. className="text-muted"
  33. data-toggle="popover"
  34. data-placement="top"
  35. data-trigger="hover focus"
  36. tabIndex="0"
  37. role="button"
  38. data-animation="false"
  39. data-html="true"
  40. data-content="<small>{{ t('user_management.password_setting_help') }}</small>"
  41. >
  42. <small>
  43. <i className="icon-question" aria-hidden="true"></i>
  44. </small>
  45. </div>
  46. </th>
  47. <th width="100px">{ t('Created') }</th>
  48. <th width="70px"></th>
  49. </tr>
  50. </thead>
  51. {/* TODO GW-328 */}
  52. </table>
  53. </Fragment>
  54. );
  55. }
  56. }
  57. const ManageExternalAccountWrapper = (props) => {
  58. return createSubscribedElement(ManageExternalAccount, props, [AppContainer]);
  59. };
  60. ManageExternalAccount.propTypes = {
  61. t: PropTypes.func.isRequired, // i18next
  62. appContainer: PropTypes.instanceOf(AppContainer).isRequired,
  63. };
  64. export default withTranslation()(ManageExternalAccountWrapper);