Parcourir la source

Add error handling for local and gridfs file upload settings update

Shun Miyazawa il y a 9 mois
Parent
commit
893cf2f387
1 fichiers modifiés avec 13 ajouts et 0 suppressions
  1. 13 0
      apps/app/src/server/routes/apiv3/app-settings.js

+ 13 - 0
apps/app/src/server/routes/apiv3/app-settings.js

@@ -890,6 +890,19 @@ module.exports = (crowi) => {
   router.put('/file-upload-setting', loginRequiredStrictly, adminRequired, addActivity, validator.fileUploadSetting, apiV3FormValidator, async(req, res) => {
     const { fileUploadType } = req.body;
 
+    if (fileUploadType === 'local' || fileUploadType === 'gridfs') {
+      try {
+        await configManager.updateConfigs({
+          'app:fileUploadType': fileUploadType,
+        }, { skipPubsub: true });
+      }
+      catch (err) {
+        const msg = `Error occurred in updating ${fileUploadType} settings: ${err.message}`;
+        logger.error('Error', err);
+        return res.apiv3Err(new ErrorV3(msg, 'update-fileUploadType-failed'));
+      }
+    }
+
     if (fileUploadType === 'aws') {
       try {
         try {