API: improve validation message greater/lower than

Add translation and return a better error for lower than
This commit is contained in:
2026-03-18 15:11:29 +01:00
parent a77d57603f
commit 0efc3629b0
4 changed files with 9 additions and 2 deletions

View File

@@ -3,6 +3,8 @@ AuthenticationSuccess = "Authentication was a success."
ValidationRequired = "This field is required."
ValidationTooShort = "This field is too short. It should be at least %s characters."
ValidationTooLong = "This field is too long. It should be under %s characters."
ValidationLowerThan = "This field should be lower than %s."
ValidationGreaterThan = "This field should be greater than %s."
ValidationPropertyFail = "Validation failed for '%s' property."
RegistrationDisabled = "Registration has been disabled on this instance."
UserAlreadyExists = "An user with this name already exists."

View File

@@ -3,6 +3,8 @@ AuthenticationSuccess = "Connexion réussie."
ValidationRequired = "Ce champ est requis."
ValidationTooShort = "Ce champ est trop court. Il devrait contenir au moins %s caractères."
ValidationTooLong = "Ce champ est trop long. Il ne devrait pas dépasser %s caractères."
ValidationLowerThan = "Ce champ devrait être inférieur à %s."
ValidationGreaterThan = "Ce champ devrait être supérieur à %s."
ValidationPropertyFail = "La validation a échoué pour la propriété '%s'."
RegistrationDisabled = "La création de nouveaux comptes a été désactivée sur cette instance."
UserAlreadyExists = "Un utilisateur avec le même nom existe déjà."

View File

@@ -79,10 +79,12 @@ func computeValidationMessage(ac *appcontext.AppContext, fe *validator.FieldErro
return i18nresource.GetTranslatedMessage(ac, "ValidationRequired")
case "min":
return fmt.Sprintf(i18nresource.GetTranslatedMessage(ac, "ValidationTooShort"), (*fe).Param())
case "gte":
return fmt.Sprintf("Should be greater than %s", (*fe).Param())
case "max":
return fmt.Sprintf(i18nresource.GetTranslatedMessage(ac, "ValidationTooLong"), (*fe).Param())
case "lte":
return fmt.Sprintf(i18nresource.GetTranslatedMessage(ac, "ValidationLowerThan"), (*fe).Param())
case "gte":
return fmt.Sprintf(i18nresource.GetTranslatedMessage(ac, "ValidationGreaterThan"), (*fe).Param())
default:
return fmt.Sprintf(i18nresource.GetTranslatedMessage(ac, "ValidationPropertyFail"), tag)
}

View File

@@ -68,6 +68,7 @@ func PutUserBookHandler(ac appcontext.AppContext) {
err = validateRating(*userBookPut.Rating)
if err != nil {
myvalidator.ReturnErrorsAsJsonResponse(&ac, err)
return
}
updateRating(&userbook, &userBookPut)
}