Taichi Masuyama před 3 roky
rodič
revize
5c69fcd5dc

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

@@ -127,6 +127,9 @@ module.exports = (crowi) => {
       body('defaultSubscribeRules.*.name').isString(),
       body('defaultSubscribeRules.*.name').isString(),
       body('defaultSubscribeRules.*.isEnabled').optional().isBoolean(),
       body('defaultSubscribeRules.*.isEnabled').optional().isBoolean(),
     ],
     ],
+    questionnaireSettings: [
+      body('isEnableQuestionnaire').isBoolean(),
+    ],
   };
   };
 
 
   /**
   /**
@@ -681,6 +684,21 @@ module.exports = (crowi) => {
     }
     }
   });
   });
 
 
+  // eslint-disable-next-line max-len
+  router.put('/questionnaire-settings', accessTokenParser, loginRequiredStrictly, validator.questionnaireSettings, apiV3FormValidator, async(req, res) => {
+    const { isEnableQuestionnaire } = req.body;
+    const { user } = req;
+    try {
+      await user.updateIsEnableQuestionnaire(isEnableQuestionnaire);
+
+      return res.apiv3({ message: 'Successfully updated questionnaire settings.', isEnableQuestionnaire });
+    }
+    catch (err) {
+      logger.error(err);
+      return res.apiv3Err({ error: 'Failed to update questionnaire settings.' });
+    }
+  });
+
 
 
   return router;
   return router;
 };
 };