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

+ 1 - 3
src/client/js/components/Admin/Users/UserInviteModal.jsx

@@ -32,10 +32,8 @@ class UserInviteModal extends React.Component {
   async handleSubmit() {
     const { appContainer } = this.props;
 
-    const emailList = this.state.emailInputValue.split('\n');
-
     try {
-      await appContainer.apiPost('/admin/user/invite', { emailList, sendEmail: this.state.sendEmail });
+      await appContainer.apiPost('/admin/user/invite', { emailInputValue: this.state.emailInputValue, sendEmail: this.state.sendEmail });
       this.props.onToggleModal();
       toastSuccess('Inviting user success');
     }

+ 2 - 1
src/server/routes/admin.js

@@ -442,7 +442,8 @@ module.exports = function(crowi, app) {
   actions.user.api = api;
 
   api.validators.inviteEmail = [
-    check('emailList').isIn([/.+@.+\..+/]).withMessage('Error. Valid email address is required'),
+    // isEmail prevents line breaks, so use isString
+    check('emailInputValue').isString(/.+@.+\..+/).withMessage('Error. Valid email address is required'),
   ];
 
   actions.user.invite = async function(req, res) {