فهرست منبع

fix: localize account_not_active error message

unknown 2 روز پیش
والد
کامیت
fe141a37b0
2فایلهای تغییر یافته به همراه9 افزوده شده و 7 حذف شده
  1. 8 4
      backend/locales.py
  2. 1 3
      backend/routers/auth.py

+ 8 - 4
backend/locales.py

@@ -11,7 +11,8 @@ ERROR_TRANSLATIONS = {
         "invalid_token": "Недействительный токен",
         "flood_control": "Слишком много сообщений. Пожалуйста, подождите 10 секунд.",
         "captcha_required": "Требуется подтверждение (капча)",
-        "too_many_attempts": "Слишком много неудачных попыток. Пожалуйста, попробуйте позже."
+        "too_many_attempts": "Слишком много неудачных попыток. Пожалуйста, попробуйте позже.",
+        "account_not_active": "Ваш аккаунт не активирован. Пожалуйста, подтвердите email или свяжитесь с поддержкой."
     },
     "me": {
         "missing": "Ovo polje je obavezno",
@@ -25,7 +26,8 @@ ERROR_TRANSLATIONS = {
         "invalid_token": "Neispravan token",
         "flood_control": "Previše poruka. Molimo sačekajte 10 sekundi.",
         "captcha_required": "Potrebna je potvrda (captcha)",
-        "too_many_attempts": "Previše neuspješnih pokušaja. Molimo pokušajte kasnije."
+        "too_many_attempts": "Previše neuspješnih pokušaja. Molimo pokušajte kasnije.",
+        "account_not_active": "Vaš nalog nije aktiviran. Molimo potvrdite email ili kontaktirajte podršku."
     },
     "ua": {
         "missing": "Це поле обов'язкове",
@@ -39,7 +41,8 @@ ERROR_TRANSLATIONS = {
         "invalid_token": "Недійсний токен",
         "flood_control": "Занадто багато повідомлень. Будь ласка, зачекайте 10 секунд.",
         "captcha_required": "Потрібне підтвердження (капча)",
-        "too_many_attempts": "Занадто багато невдалих спроб. Будь ласка, спробуйте пізніше."
+        "too_many_attempts": "Занадто багато невдалих спроб. Будь ласка, спробуйте пізніше.",
+        "account_not_active": "Ваш акаунт не активовано. Будь ласка, підтвердіть email або зв'яжіться з підтримкою."
     },
     "en": {
         "missing": "Field is required",
@@ -51,7 +54,8 @@ ERROR_TRANSLATIONS = {
         "invalid_token": "Invalid or expired token",
         "flood_control": "Too many messages. Please wait 10 seconds.",
         "captcha_required": "Captcha verification required",
-        "too_many_attempts": "Too many failed attempts. Please try again later."
+        "too_many_attempts": "Too many failed attempts. Please try again later.",
+        "account_not_active": "Your account is not active. Please verify your email or contact support."
     }
 }
 

+ 1 - 3
backend/routers/auth.py

@@ -101,9 +101,7 @@ async def login(request: Request, user_data: schemas.UserLogin, lang: str = "en"
         raise HTTPException(status_code=401, detail=locales.translate_error("incorrect_credentials", lang))
     
     if not user[0].get('is_active', True):
-        # We assume if it's 0 it might be unverified or suspended. 
-        # For simplicity, let's say "Account not active".
-        raise HTTPException(status_code=403, detail="Your account is not active. Please verify your email or contact support.")
+        raise HTTPException(status_code=403, detail=locales.translate_error("account_not_active", lang))
     
     # 5. Success - Reset Rate Limits
     rate_limit_service.reset_attempts(email, ip)