|
@@ -1,3 +1,4 @@
|
|
|
|
|
+import { ConfigSource } from '@growi/core/dist/interfaces';
|
|
|
import { ErrorV3 } from '@growi/core/dist/models';
|
|
import { ErrorV3 } from '@growi/core/dist/models';
|
|
|
import { body } from 'express-validator';
|
|
import { body } from 'express-validator';
|
|
|
|
|
|
|
@@ -5,6 +6,7 @@ import { i18n } from '^/config/next-i18next.config';
|
|
|
|
|
|
|
|
import { SupportedAction } from '~/interfaces/activity';
|
|
import { SupportedAction } from '~/interfaces/activity';
|
|
|
import { accessTokenParser } from '~/server/middlewares/access-token-parser';
|
|
import { accessTokenParser } from '~/server/middlewares/access-token-parser';
|
|
|
|
|
+import { configManager } from '~/server/service/config-manager';
|
|
|
import { getTranslation } from '~/server/service/i18next';
|
|
import { getTranslation } from '~/server/service/i18next';
|
|
|
import loggerFactory from '~/utils/logger';
|
|
import loggerFactory from '~/utils/logger';
|
|
|
|
|
|
|
@@ -430,66 +432,66 @@ module.exports = (crowi) => {
|
|
|
*/
|
|
*/
|
|
|
router.get('/', accessTokenParser, loginRequiredStrictly, adminRequired, async(req, res) => {
|
|
router.get('/', accessTokenParser, loginRequiredStrictly, adminRequired, async(req, res) => {
|
|
|
const appSettingsParams = {
|
|
const appSettingsParams = {
|
|
|
- title: crowi.configManager.getConfig('crowi', 'app:title'),
|
|
|
|
|
- confidential: crowi.configManager.getConfig('crowi', 'app:confidential'),
|
|
|
|
|
- globalLang: crowi.configManager.getConfig('crowi', 'app:globalLang'),
|
|
|
|
|
- isEmailPublishedForNewUser: crowi.configManager.getConfig('crowi', 'customize:isEmailPublishedForNewUser'),
|
|
|
|
|
- fileUpload: crowi.configManager.getConfig('crowi', 'app:fileUpload'),
|
|
|
|
|
- isV5Compatible: crowi.configManager.getConfig('crowi', 'app:isV5Compatible'),
|
|
|
|
|
- siteUrl: crowi.configManager.getConfig('crowi', 'app:siteUrl'),
|
|
|
|
|
- siteUrlUseOnlyEnvVars: crowi.configManager.getConfig('crowi', 'app:siteUrl:useOnlyEnvVars'),
|
|
|
|
|
- envSiteUrl: crowi.configManager.getConfigFromEnvVars('crowi', 'app:siteUrl'),
|
|
|
|
|
|
|
+ title: configManager.getConfig('crowi', 'app:title'),
|
|
|
|
|
+ confidential: configManager.getConfig('crowi', 'app:confidential'),
|
|
|
|
|
+ globalLang: configManager.getConfig('crowi', 'app:globalLang'),
|
|
|
|
|
+ isEmailPublishedForNewUser: configManager.getConfig('crowi', 'customize:isEmailPublishedForNewUser'),
|
|
|
|
|
+ fileUpload: configManager.getConfig('crowi', 'app:fileUpload'),
|
|
|
|
|
+ isV5Compatible: configManager.getConfig('crowi', 'app:isV5Compatible'),
|
|
|
|
|
+ siteUrl: configManager.getConfig('crowi', 'app:siteUrl'),
|
|
|
|
|
+ siteUrlUseOnlyEnvVars: configManager.getConfig('crowi', 'app:siteUrl:useOnlyEnvVars'),
|
|
|
|
|
+ envSiteUrl: configManager.getConfig('app:siteUrl', ConfigSource.env),
|
|
|
isMailerSetup: crowi.mailService.isMailerSetup,
|
|
isMailerSetup: crowi.mailService.isMailerSetup,
|
|
|
- fromAddress: crowi.configManager.getConfig('crowi', 'mail:from'),
|
|
|
|
|
-
|
|
|
|
|
- transmissionMethod: crowi.configManager.getConfig('crowi', 'mail:transmissionMethod'),
|
|
|
|
|
- smtpHost: crowi.configManager.getConfig('crowi', 'mail:smtpHost'),
|
|
|
|
|
- smtpPort: crowi.configManager.getConfig('crowi', 'mail:smtpPort'),
|
|
|
|
|
- smtpUser: crowi.configManager.getConfig('crowi', 'mail:smtpUser'),
|
|
|
|
|
- smtpPassword: crowi.configManager.getConfig('crowi', 'mail:smtpPassword'),
|
|
|
|
|
- sesAccessKeyId: crowi.configManager.getConfig('crowi', 'mail:sesAccessKeyId'),
|
|
|
|
|
- sesSecretAccessKey: crowi.configManager.getConfig('crowi', 'mail:sesSecretAccessKey'),
|
|
|
|
|
-
|
|
|
|
|
- fileUploadType: crowi.configManager.getConfig('crowi', 'app:fileUploadType'),
|
|
|
|
|
- envFileUploadType: crowi.configManager.getConfigFromEnvVars('crowi', 'app:fileUploadType'),
|
|
|
|
|
- useOnlyEnvVarForFileUploadType: crowi.configManager.getConfig('crowi', 'app:useOnlyEnvVarForFileUploadType'),
|
|
|
|
|
-
|
|
|
|
|
- s3Region: crowi.configManager.getConfig('crowi', 'aws:s3Region'),
|
|
|
|
|
- s3CustomEndpoint: crowi.configManager.getConfig('crowi', 'aws:s3CustomEndpoint'),
|
|
|
|
|
- s3Bucket: crowi.configManager.getConfig('crowi', 'aws:s3Bucket'),
|
|
|
|
|
- s3AccessKeyId: crowi.configManager.getConfig('crowi', 'aws:s3AccessKeyId'),
|
|
|
|
|
- s3ReferenceFileWithRelayMode: crowi.configManager.getConfig('crowi', 'aws:referenceFileWithRelayMode'),
|
|
|
|
|
-
|
|
|
|
|
- gcsUseOnlyEnvVars: crowi.configManager.getConfig('crowi', 'gcs:useOnlyEnvVarsForSomeOptions'),
|
|
|
|
|
- gcsApiKeyJsonPath: crowi.configManager.getConfig('crowi', 'gcs:apiKeyJsonPath'),
|
|
|
|
|
- gcsBucket: crowi.configManager.getConfig('crowi', 'gcs:bucket'),
|
|
|
|
|
- gcsUploadNamespace: crowi.configManager.getConfig('crowi', 'gcs:uploadNamespace'),
|
|
|
|
|
- gcsReferenceFileWithRelayMode: crowi.configManager.getConfig('crowi', 'gcs:referenceFileWithRelayMode'),
|
|
|
|
|
-
|
|
|
|
|
- envGcsApiKeyJsonPath: crowi.configManager.getConfigFromEnvVars('crowi', 'gcs:apiKeyJsonPath'),
|
|
|
|
|
- envGcsBucket: crowi.configManager.getConfigFromEnvVars('crowi', 'gcs:bucket'),
|
|
|
|
|
- envGcsUploadNamespace: crowi.configManager.getConfigFromEnvVars('crowi', 'gcs:uploadNamespace'),
|
|
|
|
|
-
|
|
|
|
|
- azureUseOnlyEnvVars: crowi.configManager.getConfig('crowi', 'azure:useOnlyEnvVarsForSomeOptions'),
|
|
|
|
|
- azureTenantId: crowi.configManager.getConfigFromDB('crowi', 'azure:tenantId'),
|
|
|
|
|
- azureClientId: crowi.configManager.getConfigFromDB('crowi', 'azure:clientId'),
|
|
|
|
|
- azureClientSecret: crowi.configManager.getConfigFromDB('crowi', 'azure:clientSecret'),
|
|
|
|
|
- azureStorageAccountName: crowi.configManager.getConfigFromDB('crowi', 'azure:storageAccountName'),
|
|
|
|
|
- azureStorageContainerName: crowi.configManager.getConfigFromDB('crowi', 'azure:storageContainerName'),
|
|
|
|
|
- azureReferenceFileWithRelayMode: crowi.configManager.getConfig('crowi', 'azure:referenceFileWithRelayMode'),
|
|
|
|
|
-
|
|
|
|
|
- envAzureTenantId: crowi.configManager.getConfigFromEnvVars('crowi', 'azure:tenantId'),
|
|
|
|
|
- envAzureClientId: crowi.configManager.getConfigFromEnvVars('crowi', 'azure:clientId'),
|
|
|
|
|
- envAzureClientSecret: crowi.configManager.getConfigFromEnvVars('crowi', 'azure:clientSecret'),
|
|
|
|
|
- envAzureStorageAccountName: crowi.configManager.getConfigFromEnvVars('crowi', 'azure:storageAccountName'),
|
|
|
|
|
- envAzureStorageContainerName: crowi.configManager.getConfigFromEnvVars('crowi', 'azure:storageContainerName'),
|
|
|
|
|
-
|
|
|
|
|
- isEnabledPlugins: crowi.configManager.getConfig('crowi', 'plugin:isEnabledPlugins'),
|
|
|
|
|
-
|
|
|
|
|
- isQuestionnaireEnabled: crowi.configManager.getConfig('crowi', 'questionnaire:isQuestionnaireEnabled'),
|
|
|
|
|
- isAppSiteUrlHashed: crowi.configManager.getConfig('crowi', 'questionnaire:isAppSiteUrlHashed'),
|
|
|
|
|
-
|
|
|
|
|
- isMaintenanceMode: crowi.configManager.getConfig('crowi', 'app:isMaintenanceMode'),
|
|
|
|
|
|
|
+ fromAddress: configManager.getConfig('crowi', 'mail:from'),
|
|
|
|
|
+
|
|
|
|
|
+ transmissionMethod: configManager.getConfig('crowi', 'mail:transmissionMethod'),
|
|
|
|
|
+ smtpHost: configManager.getConfig('crowi', 'mail:smtpHost'),
|
|
|
|
|
+ smtpPort: configManager.getConfig('crowi', 'mail:smtpPort'),
|
|
|
|
|
+ smtpUser: configManager.getConfig('crowi', 'mail:smtpUser'),
|
|
|
|
|
+ smtpPassword: configManager.getConfig('crowi', 'mail:smtpPassword'),
|
|
|
|
|
+ sesAccessKeyId: configManager.getConfig('crowi', 'mail:sesAccessKeyId'),
|
|
|
|
|
+ sesSecretAccessKey: configManager.getConfig('crowi', 'mail:sesSecretAccessKey'),
|
|
|
|
|
+
|
|
|
|
|
+ fileUploadType: configManager.getConfig('crowi', 'app:fileUploadType'),
|
|
|
|
|
+ envFileUploadType: configManager.getConfig('app:fileUploadType', ConfigSource.env),
|
|
|
|
|
+ useOnlyEnvVarForFileUploadType: configManager.getConfig('crowi', 'app:useOnlyEnvVarForFileUploadType'),
|
|
|
|
|
+
|
|
|
|
|
+ s3Region: configManager.getConfig('crowi', 'aws:s3Region'),
|
|
|
|
|
+ s3CustomEndpoint: configManager.getConfig('crowi', 'aws:s3CustomEndpoint'),
|
|
|
|
|
+ s3Bucket: configManager.getConfig('crowi', 'aws:s3Bucket'),
|
|
|
|
|
+ s3AccessKeyId: configManager.getConfig('crowi', 'aws:s3AccessKeyId'),
|
|
|
|
|
+ s3ReferenceFileWithRelayMode: configManager.getConfig('crowi', 'aws:referenceFileWithRelayMode'),
|
|
|
|
|
+
|
|
|
|
|
+ gcsUseOnlyEnvVars: configManager.getConfig('crowi', 'gcs:useOnlyEnvVarsForSomeOptions'),
|
|
|
|
|
+ gcsApiKeyJsonPath: configManager.getConfig('crowi', 'gcs:apiKeyJsonPath'),
|
|
|
|
|
+ gcsBucket: configManager.getConfig('crowi', 'gcs:bucket'),
|
|
|
|
|
+ gcsUploadNamespace: configManager.getConfig('crowi', 'gcs:uploadNamespace'),
|
|
|
|
|
+ gcsReferenceFileWithRelayMode: configManager.getConfig('crowi', 'gcs:referenceFileWithRelayMode'),
|
|
|
|
|
+
|
|
|
|
|
+ envGcsApiKeyJsonPath: configManager.getConfig('gcs:apiKeyJsonPath', ConfigSource.env),
|
|
|
|
|
+ envGcsBucket: configManager.getConfig('gcs:bucket', ConfigSource.env),
|
|
|
|
|
+ envGcsUploadNamespace: configManager.getConfig('gcs:uploadNamespace', ConfigSource.env),
|
|
|
|
|
+
|
|
|
|
|
+ azureUseOnlyEnvVars: configManager.getConfig('crowi', 'azure:useOnlyEnvVarsForSomeOptions'),
|
|
|
|
|
+ azureTenantId: configManager.getConfigFromDB('crowi', 'azure:tenantId'),
|
|
|
|
|
+ azureClientId: configManager.getConfigFromDB('crowi', 'azure:clientId'),
|
|
|
|
|
+ azureClientSecret: configManager.getConfigFromDB('crowi', 'azure:clientSecret'),
|
|
|
|
|
+ azureStorageAccountName: configManager.getConfigFromDB('crowi', 'azure:storageAccountName'),
|
|
|
|
|
+ azureStorageContainerName: configManager.getConfigFromDB('crowi', 'azure:storageContainerName'),
|
|
|
|
|
+ azureReferenceFileWithRelayMode: configManager.getConfig('crowi', 'azure:referenceFileWithRelayMode'),
|
|
|
|
|
+
|
|
|
|
|
+ envAzureTenantId: configManager.getConfig('azure:tenantId', ConfigSource.env),
|
|
|
|
|
+ envAzureClientId: configManager.getConfig('azure:clientId', ConfigSource.env),
|
|
|
|
|
+ envAzureClientSecret: configManager.getConfig('azure:clientSecret', ConfigSource.env),
|
|
|
|
|
+ envAzureStorageAccountName: configManager.getConfig('azure:storageAccountName', ConfigSource.env),
|
|
|
|
|
+ envAzureStorageContainerName: configManager.getConfig('azure:storageContainerName', ConfigSource.env),
|
|
|
|
|
+
|
|
|
|
|
+ isEnabledPlugins: configManager.getConfig('crowi', 'plugin:isEnabledPlugins'),
|
|
|
|
|
+
|
|
|
|
|
+ isQuestionnaireEnabled: configManager.getConfig('crowi', 'questionnaire:isQuestionnaireEnabled'),
|
|
|
|
|
+ isAppSiteUrlHashed: configManager.getConfig('crowi', 'questionnaire:isAppSiteUrlHashed'),
|
|
|
|
|
+
|
|
|
|
|
+ isMaintenanceMode: configManager.getConfig('crowi', 'app:isMaintenanceMode'),
|
|
|
};
|
|
};
|
|
|
return res.apiv3({ appSettingsParams });
|
|
return res.apiv3({ appSettingsParams });
|
|
|
|
|
|
|
@@ -535,13 +537,13 @@ module.exports = (crowi) => {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- await crowi.configManager.updateConfigsInTheSameNamespace('crowi', requestAppSettingParams);
|
|
|
|
|
|
|
+ await configManager.updateConfigs(requestAppSettingParams);
|
|
|
const appSettingParams = {
|
|
const appSettingParams = {
|
|
|
- title: crowi.configManager.getConfig('crowi', 'app:title'),
|
|
|
|
|
- confidential: crowi.configManager.getConfig('crowi', 'app:confidential'),
|
|
|
|
|
- globalLang: crowi.configManager.getConfig('crowi', 'app:globalLang'),
|
|
|
|
|
- isEmailPublishedForNewUser: crowi.configManager.getConfig('crowi', 'customize:isEmailPublishedForNewUser'),
|
|
|
|
|
- fileUpload: crowi.configManager.getConfig('crowi', 'app:fileUpload'),
|
|
|
|
|
|
|
+ title: configManager.getConfig('crowi', 'app:title'),
|
|
|
|
|
+ confidential: configManager.getConfig('crowi', 'app:confidential'),
|
|
|
|
|
+ globalLang: configManager.getConfig('crowi', 'app:globalLang'),
|
|
|
|
|
+ isEmailPublishedForNewUser: configManager.getConfig('crowi', 'customize:isEmailPublishedForNewUser'),
|
|
|
|
|
+ fileUpload: configManager.getConfig('crowi', 'app:fileUpload'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_APP_SETTINGS_UPDATE };
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_APP_SETTINGS_UPDATE };
|
|
@@ -592,7 +594,7 @@ module.exports = (crowi) => {
|
|
|
*/
|
|
*/
|
|
|
router.put('/site-url-setting', loginRequiredStrictly, adminRequired, addActivity, validator.siteUrlSetting, apiV3FormValidator, async(req, res) => {
|
|
router.put('/site-url-setting', loginRequiredStrictly, adminRequired, addActivity, validator.siteUrlSetting, apiV3FormValidator, async(req, res) => {
|
|
|
|
|
|
|
|
- const useOnlyEnvVars = crowi.configManager.getConfig('crowi', 'app:siteUrl:useOnlyEnvVars');
|
|
|
|
|
|
|
+ const useOnlyEnvVars = configManager.getConfig('crowi', 'app:siteUrl:useOnlyEnvVars');
|
|
|
|
|
|
|
|
if (useOnlyEnvVars) {
|
|
if (useOnlyEnvVars) {
|
|
|
const msg = 'Updating the Site URL is prohibited on this system.';
|
|
const msg = 'Updating the Site URL is prohibited on this system.';
|
|
@@ -604,9 +606,9 @@ module.exports = (crowi) => {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- await crowi.configManager.updateConfigsInTheSameNamespace('crowi', requestSiteUrlSettingParams);
|
|
|
|
|
|
|
+ await configManager.updateConfigs(requestSiteUrlSettingParams);
|
|
|
const siteUrlSettingParams = {
|
|
const siteUrlSettingParams = {
|
|
|
- siteUrl: crowi.configManager.getConfig('crowi', 'app:siteUrl'),
|
|
|
|
|
|
|
+ siteUrl: configManager.getConfig('crowi', 'app:siteUrl'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_SITE_URL_UPDATE };
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_SITE_URL_UPDATE };
|
|
@@ -642,7 +644,7 @@ module.exports = (crowi) => {
|
|
|
*/
|
|
*/
|
|
|
async function sendTestEmail(destinationAddress) {
|
|
async function sendTestEmail(destinationAddress) {
|
|
|
|
|
|
|
|
- const { configManager, mailService } = crowi;
|
|
|
|
|
|
|
+ const { mailService } = crowi;
|
|
|
|
|
|
|
|
if (!mailService.isMailerSetup) {
|
|
if (!mailService.isMailerSetup) {
|
|
|
throw Error('mailService is not setup');
|
|
throw Error('mailService is not setup');
|
|
@@ -687,12 +689,11 @@ module.exports = (crowi) => {
|
|
|
|
|
|
|
|
const updateMailSettinConfig = async function(requestMailSettingParams) {
|
|
const updateMailSettinConfig = async function(requestMailSettingParams) {
|
|
|
const {
|
|
const {
|
|
|
- configManager,
|
|
|
|
|
mailService,
|
|
mailService,
|
|
|
} = crowi;
|
|
} = crowi;
|
|
|
|
|
|
|
|
// update config without publishing S2sMessage
|
|
// update config without publishing S2sMessage
|
|
|
- await configManager.updateConfigsInTheSameNamespace('crowi', requestMailSettingParams, true);
|
|
|
|
|
|
|
+ await configManager.updateConfigs(requestMailSettingParams, { skipPubsub: true });
|
|
|
|
|
|
|
|
await mailService.initialize();
|
|
await mailService.initialize();
|
|
|
mailService.publishUpdatedMessage();
|
|
mailService.publishUpdatedMessage();
|
|
@@ -912,42 +913,42 @@ module.exports = (crowi) => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- await crowi.configManager.updateConfigsInTheSameNamespace('crowi', requestParams, true);
|
|
|
|
|
|
|
+ await configManager.updateConfigs(requestParams, { skipPubsub: true });
|
|
|
|
|
|
|
|
const s3SecretAccessKey = req.body.s3SecretAccessKey;
|
|
const s3SecretAccessKey = req.body.s3SecretAccessKey;
|
|
|
if (fileUploadType === 'aws' && s3SecretAccessKey != null && s3SecretAccessKey.trim() !== '') {
|
|
if (fileUploadType === 'aws' && s3SecretAccessKey != null && s3SecretAccessKey.trim() !== '') {
|
|
|
- await crowi.configManager.updateConfigsInTheSameNamespace('crowi', { 'aws:s3SecretAccessKey': s3SecretAccessKey }, true);
|
|
|
|
|
|
|
+ await configManager.updateConfigs({ 'aws:s3SecretAccessKey': s3SecretAccessKey }, { skipPubsub: true });
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
await crowi.setUpFileUpload(true);
|
|
await crowi.setUpFileUpload(true);
|
|
|
crowi.fileUploaderSwitchService.publishUpdatedMessage();
|
|
crowi.fileUploaderSwitchService.publishUpdatedMessage();
|
|
|
|
|
|
|
|
const responseParams = {
|
|
const responseParams = {
|
|
|
- fileUploadType: crowi.configManager.getConfig('crowi', 'app:fileUploadType'),
|
|
|
|
|
|
|
+ fileUploadType: configManager.getConfig('crowi', 'app:fileUploadType'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
if (fileUploadType === 'gcs') {
|
|
if (fileUploadType === 'gcs') {
|
|
|
- responseParams.gcsApiKeyJsonPath = crowi.configManager.getConfig('crowi', 'gcs:apiKeyJsonPath');
|
|
|
|
|
- responseParams.gcsBucket = crowi.configManager.getConfig('crowi', 'gcs:bucket');
|
|
|
|
|
- responseParams.gcsUploadNamespace = crowi.configManager.getConfig('crowi', 'gcs:uploadNamespace');
|
|
|
|
|
- responseParams.gcsReferenceFileWithRelayMode = crowi.configManager.getConfig('crowi', 'gcs:referenceFileWithRelayMode ');
|
|
|
|
|
|
|
+ responseParams.gcsApiKeyJsonPath = configManager.getConfig('crowi', 'gcs:apiKeyJsonPath');
|
|
|
|
|
+ responseParams.gcsBucket = configManager.getConfig('crowi', 'gcs:bucket');
|
|
|
|
|
+ responseParams.gcsUploadNamespace = configManager.getConfig('crowi', 'gcs:uploadNamespace');
|
|
|
|
|
+ responseParams.gcsReferenceFileWithRelayMode = configManager.getConfig('crowi', 'gcs:referenceFileWithRelayMode ');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (fileUploadType === 'aws') {
|
|
if (fileUploadType === 'aws') {
|
|
|
- responseParams.s3Region = crowi.configManager.getConfig('crowi', 'aws:s3Region');
|
|
|
|
|
- responseParams.s3CustomEndpoint = crowi.configManager.getConfig('crowi', 'aws:s3CustomEndpoint');
|
|
|
|
|
- responseParams.s3Bucket = crowi.configManager.getConfig('crowi', 'aws:s3Bucket');
|
|
|
|
|
- responseParams.s3AccessKeyId = crowi.configManager.getConfig('crowi', 'aws:s3AccessKeyId');
|
|
|
|
|
- responseParams.s3ReferenceFileWithRelayMode = crowi.configManager.getConfig('crowi', 'aws:referenceFileWithRelayMode');
|
|
|
|
|
|
|
+ responseParams.s3Region = configManager.getConfig('crowi', 'aws:s3Region');
|
|
|
|
|
+ responseParams.s3CustomEndpoint = configManager.getConfig('crowi', 'aws:s3CustomEndpoint');
|
|
|
|
|
+ responseParams.s3Bucket = configManager.getConfig('crowi', 'aws:s3Bucket');
|
|
|
|
|
+ responseParams.s3AccessKeyId = configManager.getConfig('crowi', 'aws:s3AccessKeyId');
|
|
|
|
|
+ responseParams.s3ReferenceFileWithRelayMode = configManager.getConfig('crowi', 'aws:referenceFileWithRelayMode');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (fileUploadType === 'azure') {
|
|
if (fileUploadType === 'azure') {
|
|
|
- responseParams.azureTenantId = crowi.configManager.getConfig('crowi', 'azure:tenantId');
|
|
|
|
|
- responseParams.azureClientId = crowi.configManager.getConfig('crowi', 'azure:clientId');
|
|
|
|
|
- responseParams.azureClientSecret = crowi.configManager.getConfig('crowi', 'azure:clientSecret');
|
|
|
|
|
- responseParams.azureStorageAccountName = crowi.configManager.getConfig('crowi', 'azure:storageAccountName');
|
|
|
|
|
- responseParams.azureStorageContainerName = crowi.configManager.getConfig('crowi', 'azure:storageContainerName');
|
|
|
|
|
- responseParams.azureReferenceFileWithRelayMode = crowi.configManager.getConfig('crowi', 'azure:referenceFileWithRelayMode');
|
|
|
|
|
|
|
+ responseParams.azureTenantId = configManager.getConfig('crowi', 'azure:tenantId');
|
|
|
|
|
+ responseParams.azureClientId = configManager.getConfig('crowi', 'azure:clientId');
|
|
|
|
|
+ responseParams.azureClientSecret = configManager.getConfig('crowi', 'azure:clientSecret');
|
|
|
|
|
+ responseParams.azureStorageAccountName = configManager.getConfig('crowi', 'azure:storageAccountName');
|
|
|
|
|
+ responseParams.azureStorageContainerName = configManager.getConfig('crowi', 'azure:storageContainerName');
|
|
|
|
|
+ responseParams.azureReferenceFileWithRelayMode = configManager.getConfig('crowi', 'azure:referenceFileWithRelayMode');
|
|
|
}
|
|
}
|
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_FILE_UPLOAD_CONFIG_UPDATE };
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_FILE_UPLOAD_CONFIG_UPDATE };
|
|
|
activityEvent.emit('update', res.locals.activity._id, parameters);
|
|
activityEvent.emit('update', res.locals.activity._id, parameters);
|
|
@@ -1000,11 +1001,11 @@ module.exports = (crowi) => {
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
- await crowi.configManager.updateConfigsInTheSameNamespace('crowi', requestParams, true);
|
|
|
|
|
|
|
+ await configManager.updateConfigs(requestParams, { skipPubsub: true });
|
|
|
|
|
|
|
|
const responseParams = {
|
|
const responseParams = {
|
|
|
- isQuestionnaireEnabled: crowi.configManager.getConfig('crowi', 'questionnaire:isQuestionnaireEnabled'),
|
|
|
|
|
- isAppSiteUrlHashed: crowi.configManager.getConfig('crowi', 'questionnaire:isAppSiteUrlHashed'),
|
|
|
|
|
|
|
+ isQuestionnaireEnabled: configManager.getConfig('crowi', 'questionnaire:isQuestionnaireEnabled'),
|
|
|
|
|
+ isAppSiteUrlHashed: configManager.getConfig('crowi', 'questionnaire:isAppSiteUrlHashed'),
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_QUESTIONNAIRE_SETTINGS_UPDATE };
|
|
const parameters = { action: SupportedAction.ACTION_ADMIN_QUESTIONNAIRE_SETTINGS_UPDATE };
|
|
@@ -1049,7 +1050,7 @@ module.exports = (crowi) => {
|
|
|
return res.apiv3Err(new ErrorV3('GROWI is not maintenance mode. To import data, please activate the maintenance mode first.', 'not_maintenance_mode'));
|
|
return res.apiv3Err(new ErrorV3('GROWI is not maintenance mode. To import data, please activate the maintenance mode first.', 'not_maintenance_mode'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- const isV5Compatible = crowi.configManager.getConfig('crowi', 'app:isV5Compatible');
|
|
|
|
|
|
|
+ const isV5Compatible = configManager.getConfig('crowi', 'app:isV5Compatible');
|
|
|
|
|
|
|
|
try {
|
|
try {
|
|
|
if (!isV5Compatible) {
|
|
if (!isV5Compatible) {
|