diff --git a/tdrive/backend/node/config/custom-environment-variables.json b/tdrive/backend/node/config/custom-environment-variables.json index 05a41d72..b2e026cf 100644 --- a/tdrive/backend/node/config/custom-environment-variables.json +++ b/tdrive/backend/node/config/custom-environment-variables.json @@ -117,6 +117,7 @@ "server": "PLUGINS_SERVER" }, "drive": { - "rootAdmins": "DRIVE_ROOT_ADMINS" + "rootAdmins": "DRIVE_ROOT_ADMINS", + "defaultLanguage": "DRIVE_DEFAULT_LANGUAGE" } } diff --git a/tdrive/backend/node/src/services/documents/utils.ts b/tdrive/backend/node/src/services/documents/utils.ts index b92aad48..bce12a3a 100644 --- a/tdrive/backend/node/src/services/documents/utils.ts +++ b/tdrive/backend/node/src/services/documents/utils.ts @@ -12,6 +12,7 @@ import { writeToTemporaryFile, } from "../../utils/files"; import mimes from "../../utils/mime"; +import { Configuration } from "../../core/platform/framework"; import gr from "../global-resolver"; import { stopWords } from "./const"; import { DriveFile } from "./entities/drive-file"; @@ -44,8 +45,10 @@ export const isSharedWithMeFolder = (id: string) => { }; export const getVirtualFoldersNames = async (id: string, context: DriveExecutionContext) => { + const configuration = new Configuration("drive"); + const defaultLang = configuration.get("defaultLanguage") || "en"; const user = await gr.services.users.get({ id: context.user?.id }); - const locale = user?.preferences?.locale || "en"; + const locale = user?.preferences?.locale || defaultLang; if (id.startsWith("user_")) { return gr.services.i18n.translate("virtual-folder.my-drive", locale); diff --git a/tdrive/backend/node/src/utils/users.ts b/tdrive/backend/node/src/utils/users.ts index 50d65a1f..35555fb1 100644 --- a/tdrive/backend/node/src/utils/users.ts +++ b/tdrive/backend/node/src/utils/users.ts @@ -6,6 +6,7 @@ import { CompanyUserStatus, UserObject, } from "../services/user/web/types"; +import { Configuration } from "../core/platform/framework"; import gr from "../services/global-resolver"; export async function formatUser( @@ -13,6 +14,8 @@ export async function formatUser( options?: { includeCompanies?: boolean }, ): Promise { if (!user) return null; + const configuration = new Configuration("drive"); + const defaultLang = configuration.get("defaultLanguage") || "en"; let resUser = { id: user.id, @@ -69,7 +72,7 @@ export async function formatUser( ...resUser, preferences: { ...user.preferences, - locale: user.preferences?.language || user.language || "en", + locale: user.preferences?.language || user.language || defaultLang, timezone: user.preferences?.timezone || parseInt(user.timezone) || 0, allow_tracking: user.preferences?.allow_tracking || false, },