itizawa 6 лет назад
Родитель
Сommit
7220dc13a1

+ 49 - 0
src/client/js/components/Admin/Users/UserInviteModal.jsx

@@ -0,0 +1,49 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import { withTranslation } from 'react-i18next';
+
+import Modal from 'react-bootstrap/es/Modal';
+
+import { createSubscribedElement } from '../../UnstatedUtils';
+import AppContainer from '../../../services/AppContainer';
+
+class UserInviteModal extends React.Component {
+
+  render() {
+    const { t } = this.props;
+
+    return (
+      <Modal show={this.props.show} onHide={this.props.onToggleModal}>
+        <Modal.Header className="modal-header" closeButton>
+          <Modal.Title>
+            { t('user_management.reset_password') }
+          </Modal.Title>
+        </Modal.Header>
+        <Modal.Body>
+          ここにモーダル
+        </Modal.Body>
+        <Modal.Footer>
+        </Modal.Footer>
+      </Modal>
+    );
+  }
+
+}
+
+/**
+ * Wrapper component for using unstated
+ */
+const UserInviteModalWrapper = (props) => {
+  return createSubscribedElement(UserInviteModal, props, [AppContainer]);
+};
+
+
+UserInviteModal.propTypes = {
+  t: PropTypes.func.isRequired, // i18next
+  appContainer: PropTypes.instanceOf(AppContainer).isRequired,
+
+  show: PropTypes.bool.isRequired,
+  onToggleModal: PropTypes.func.isRequired,
+};
+
+export default withTranslation()(UserInviteModalWrapper);

+ 5 - 0
src/client/js/components/Admin/Users/Users.jsx

@@ -9,6 +9,7 @@ import UserTable from './UserTable';
 
 import { createSubscribedElement } from '../../UnstatedUtils';
 import AppContainer from '../../../services/AppContainer';
+import UserInviteModal from './UserInviteModal';
 
 class UserPage extends React.Component {
 
@@ -75,6 +76,10 @@ class UserPage extends React.Component {
             onHideModal={this.hidePasswordResetModal}
           />
         ) }
+        <UserInviteModal
+          show={this.state.isUserInviteModalShown}
+          onToggleModal={this.toggleUserInviteModal}
+        />
         <p>
           <InviteUserControl toggleUserInviteModal={this.toggleUserInviteModal} />
           <a className="btn btn-default btn-outline ml-2" href="/admin/users/external-accounts">