import React from 'react'; import PropTypes from 'prop-types'; import { withTranslation } from 'react-i18next'; import { CopyToClipboard } from 'react-copy-to-clipboard'; // import Button from 'react-bootstrap/es/Button'; import { Modal, ModalHeader, ModalBody, ModalFooter, } from 'reactstrap'; import { toastSuccess, toastError, toastWarning } from '../../../util/apiNotification'; import { withUnstatedContainers } from '../../UnstatedUtils'; import AppContainer from '../../../services/AppContainer'; import AdminUsersContainer from '../../../services/AdminUsersContainer'; class UserInviteModal extends React.Component { constructor(props) { super(props); this.state = { emailInputValue: '', sendEmail: false, invitedEmailList: null, isCreateUserButtonPushed: false, }; this.handleSubmit = this.handleSubmit.bind(this); this.handleInput = this.handleInput.bind(this); this.handleCheckBox = this.handleCheckBox.bind(this); this.onToggleModal = this.onToggleModal.bind(this); } onToggleModal() { this.props.adminUsersContainer.toggleUserInviteModal(); this.setState({ invitedEmailList: null }); } showToaster() { toastSuccess('Copied Mail and Password'); } showToasterByEmailList(emailList, toast) { let msg = ''; emailList.forEach((email) => { msg += `・${email}
`; }); switch (toast) { case 'success': msg = `User has been created
${msg}`; toastSuccess(msg); break; case 'warning': msg = `Existing email
${msg}`; toastWarning(msg); break; case 'error': toastError({ message: msg }); break; } } renderModalBody() { const { t } = this.props; return ( <>

{t('admin:user_management.invite_modal.description1')}
{t('admin:user_management.invite_modal.description2')}