Taichi Masuyama 4 лет назад
Родитель
Сommit
e2591ed976

+ 6 - 6
packages/app/src/client/services/PersonalContainer.js

@@ -30,7 +30,7 @@ export default class PersonalContainer extends Container {
       uploadedPictureSrc: this.getUploadedPictureSrc(this.appContainer.currentUser),
       externalAccounts: [],
       apiToken: '',
-      slackId: '',
+      slackMemberId: '',
     };
 
   }
@@ -56,7 +56,7 @@ export default class PersonalContainer extends Container {
         lang: currentUser.lang,
         isGravatarEnabled: currentUser.isGravatarEnabled,
         apiToken: currentUser.apiToken,
-        slackId: currentUser.slackId,
+        slackMemberId: currentUser.slackMemberId,
       });
     }
     catch (err) {
@@ -119,8 +119,8 @@ export default class PersonalContainer extends Container {
   /**
    * Change Slack ID
    */
-  changeSlackId(inputValue) {
-    this.setState({ slackId: inputValue });
+  changeSlackMemberId(inputValue) {
+    this.setState({ slackMemberId: inputValue });
   }
 
   /**
@@ -156,7 +156,7 @@ export default class PersonalContainer extends Container {
         email: this.state.email,
         isEmailPublished: this.state.isEmailPublished,
         lang: this.state.lang,
-        slackId: this.state.slackId,
+        slackMemberId: this.state.slackMemberId,
       });
       const { updatedUser } = response.data;
 
@@ -165,7 +165,7 @@ export default class PersonalContainer extends Container {
         email: updatedUser.email,
         isEmailPublished: updatedUser.isEmailPublished,
         lang: updatedUser.lang,
-        slackId: updatedUser.slackId,
+        slackMemberId: updatedUser.slackMemberId,
       });
     }
     catch (err) {

+ 5 - 5
packages/app/src/components/Me/BasicInfoSettings.jsx

@@ -129,15 +129,15 @@ class BasicInfoSettings extends React.Component {
           </div>
         </div>
         <div className="form-group row">
-          <label htmlFor="userForm[slackId]" className="text-left text-md-right col-md-3 col-form-label">{t('Slack ID')}</label>
+          <label htmlFor="userForm[slackMemberId]" className="text-left text-md-right col-md-3 col-form-label">{t('Slack ID')}</label>
           <div className="col-md-6">
             <input
               className="form-control"
               type="text"
-              key={personalContainer.state.slackId}
-              name="userForm[slackId]"
-              defaultValue={personalContainer.state.slackId}
-              onChange={(e) => { personalContainer.changeSlackId(e.target.value) }}
+              key={personalContainer.state.slackMemberId}
+              name="userForm[slackMemberId]"
+              defaultValue={personalContainer.state.slackMemberId}
+              onChange={(e) => { personalContainer.changeSlackMemberId(e.target.value) }}
             />
           </div>
         </div>

+ 5 - 5
packages/app/src/server/models/user.js

@@ -47,7 +47,7 @@ module.exports = function(crowi) {
     name: { type: String },
     username: { type: String, required: true, unique: true },
     email: { type: String, unique: true, sparse: true },
-    slackId: { type: String, unique: true },
+    slackMemberId: { type: String, unique: true },
     // === Crowi settings
     // username: { type: String, index: true },
     // email: { type: String, required: true, index: true },
@@ -690,16 +690,16 @@ module.exports = function(crowi) {
     user.save();
   };
 
-  userSchema.statics.findUserBySlackId = async function(slackId) {
-    const user = this.findOne({ slackId });
+  userSchema.statics.findUserBySlackMemberId = async function(slackMemberId) {
+    const user = this.findOne({ slackMemberId });
     if (user == null) {
       throw new Error('User not found');
     }
     return user;
   };
 
-  userSchema.statics.findUsersBySlackIds = async function(slackIds) {
-    const users = this.find({ slackId: { $in: slackIds } });
+  userSchema.statics.findUsersBySlackMemberIds = async function(slackMemberIds) {
+    const users = this.find({ slackMemberId: { $in: slackMemberIds } });
     if (users.length === 0) {
       throw new Error('No user found');
     }

+ 2 - 2
packages/app/src/server/routes/apiv3/personal-setting.js

@@ -84,7 +84,7 @@ module.exports = (crowi) => {
         }),
       body('lang').isString().isIn(listLocaleIds()),
       body('isEmailPublished').isBoolean(),
-      body('slackId').optional().isString(),
+      body('slackMemberId').optional().isString(),
     ],
     imageType: [
       body('isGravatarEnabled').isBoolean(),
@@ -227,7 +227,7 @@ module.exports = (crowi) => {
       user.email = req.body.email;
       user.lang = req.body.lang;
       user.isEmailPublished = req.body.isEmailPublished;
-      user.slackId = req.body.slackId;
+      user.slackMemberId = req.body.slackMemberId;
 
       const updatedUser = await user.save();
       req.i18n.changeLanguage(req.body.lang);

+ 6 - 6
packages/app/src/server/service/slack-command-handler/keep.js

@@ -33,7 +33,7 @@ module.exports = (crowi) => {
   handler.createPage = async function(client, payload, interactionPayloadAccessor, respondUtil) {
     let result = [];
     const channelId = payload.channel.id; // this must exist since the type is always block_actions
-    const user = await User.findUserBySlackId(payload.user.id);
+    const user = await User.findUserBySlackMemberId(payload.user.id);
 
     const userId = user != null ? user._id : null;
     // validate form
@@ -148,19 +148,19 @@ module.exports = (crowi) => {
     const users = messages.map((message) => {
       return message.user;
     });
-    const growiUsers = await User.findUsersBySlackIds(users);
+    const growiUsers = await User.findUsersBySlackMemberIds(users);
     return growiUsers;
   };
   /**
    * Convert slack ID to growi user if slack ID is found in messages
    * @param {*} messages
    */
-  handler.messagesWithGrowiUser = async function(messages) {
+  handler.injectGrowiUsernameToMessages = async function(messages) {
     const growiUsers = await this.getGrowiUsersFromMessages(messages);
 
     messages.map(async(message) => {
-      const growiUser = growiUsers.find(user => user.slackId === message.user);
-      if (growiUser !== null) {
+      const growiUser = growiUsers.find(user => user.slackMemberId === message.user);
+      if (growiUser != null) {
         message.user = `${growiUser.name} (@${growiUser.username})`;
       }
       else {
@@ -173,7 +173,7 @@ module.exports = (crowi) => {
     const cleanedContents = [];
     let lastMessage = {};
     const grwTzoffset = crowi.appService.getTzoffset() * 60;
-    await this.messagesWithGrowiUser(messages);
+    await this.injectGrowiUsernameToMessages(messages);
     messages
       .sort((a, b) => {
         return a.ts - b.ts;