From 203c725e0ceefd2253e4f80b48d474d39d54e494 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 13 Apr 2026 18:21:41 +0300 Subject: [PATCH] i18n(server): password not correct --- apps/server/src/assets/translations/en/server.json | 3 +++ apps/server/src/routes/api/login.ts | 3 ++- apps/server/src/services/encryption/password.ts | 3 ++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/server/src/assets/translations/en/server.json b/apps/server/src/assets/translations/en/server.json index e1774fd589..8542592a8f 100644 --- a/apps/server/src/assets/translations/en/server.json +++ b/apps/server/src/assets/translations/en/server.json @@ -212,6 +212,9 @@ "button": "Login", "sign_in_with_sso": "Sign in with {{ ssoIssuerName }}" }, + "password": { + "incorrect": "The password you entered is incorrect." + }, "set_password": { "title": "Set Password", "heading": "Set password", diff --git a/apps/server/src/routes/api/login.ts b/apps/server/src/routes/api/login.ts index 22c0e6ab0f..9a90c0f291 100644 --- a/apps/server/src/routes/api/login.ts +++ b/apps/server/src/routes/api/login.ts @@ -15,6 +15,7 @@ import etapiTokenService from "../../services/etapi_tokens.js"; import type { Request } from "express"; import totp from "../../services/totp"; import recoveryCodeService from "../../services/encryption/recovery_codes"; +import { t } from "i18next"; /** * @swagger @@ -126,7 +127,7 @@ function loginToProtectedSession(req: Request) { if (!passwordEncryptionService.verifyPassword(password)) { return { success: false, - message: "Given current password doesn't match hash" + message: t("password.incorrect") }; } diff --git a/apps/server/src/services/encryption/password.ts b/apps/server/src/services/encryption/password.ts index 7885a2a2b6..7864682444 100644 --- a/apps/server/src/services/encryption/password.ts +++ b/apps/server/src/services/encryption/password.ts @@ -4,6 +4,7 @@ import myScryptService from "./my_scrypt.js"; import { randomSecureToken, toBase64 } from "../utils.js"; import passwordEncryptionService from "./password_encryption.js"; import { ChangePasswordResponse } from "@triliumnext/commons"; +import { t } from "i18next"; function isPasswordSet() { return !!sql.getValue("SELECT value FROM options WHERE name = 'passwordVerificationHash'"); @@ -17,7 +18,7 @@ function changePassword(currentPassword: string, newPassword: string): ChangePas if (!passwordEncryptionService.verifyPassword(currentPassword)) { return { success: false, - message: "Given current password doesn't match hash" + message: t("password.incorrect") }; }