mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-29 13:27:09 -05:00
Localize hard-coded texts (#2044)
* feat(lang): localize some views * feat(lang): an attempt at localizing vuetify (WIP) * feat(lang): localized some more screens * feat(lang): localized some more screens again * feat(lang): hack to localize vuetify * feat(lang): localize data management pages * fix linting errors --------- Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
This commit is contained in:
@@ -5,6 +5,17 @@
|
||||
"recipe": {
|
||||
"unique-name-error": "Recipe names must be unique"
|
||||
},
|
||||
"mealplan": {
|
||||
"no-recipes-match-your-rules": "No recipes match your rules"
|
||||
},
|
||||
"user": {
|
||||
"user-updated": "User updated",
|
||||
"password-updated": "Password updated",
|
||||
"invalid-current-password": "Invalid current password"
|
||||
},
|
||||
"group": {
|
||||
"report-deleted": "Report deleted."
|
||||
},
|
||||
"exceptions": {
|
||||
"permission_denied": "You do not have permission to perform this action",
|
||||
"no-entry-found": "The requested resource was not found",
|
||||
|
||||
@@ -90,7 +90,7 @@ class BaseUserController(_BaseController):
|
||||
registered = {
|
||||
**mealie_registered_exceptions(self.translator),
|
||||
}
|
||||
return registered.get(ex, "An unexpected error occurred.")
|
||||
return registered.get(ex, self.t("generic.server-error"))
|
||||
|
||||
@property
|
||||
def group_id(self) -> UUID4:
|
||||
|
||||
@@ -30,7 +30,7 @@ class RecipeCommentRoutes(BaseUserController):
|
||||
|
||||
@property
|
||||
def mixins(self) -> HttpRepo:
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, "An unexpected error occurred.")
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, self.t("generic.server-error"))
|
||||
|
||||
def _check_comment_belongs_to_user(self, item_id: UUID4) -> None:
|
||||
comment = self.repo.get_one(item_id)
|
||||
|
||||
@@ -31,7 +31,7 @@ class GroupCookbookController(BaseCrudController):
|
||||
registered = {
|
||||
**mealie_registered_exceptions(self.translator),
|
||||
}
|
||||
return registered.get(ex, "An unexpected error occurred.")
|
||||
return registered.get(ex, self.t("generic.server-error"))
|
||||
|
||||
@cached_property
|
||||
def mixins(self):
|
||||
|
||||
@@ -49,7 +49,7 @@ class GroupEventsNotifierController(BaseUserController):
|
||||
|
||||
@property
|
||||
def mixins(self) -> HttpRepo:
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, "An unexpected error occurred.")
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, self.t("generic.server-error"))
|
||||
|
||||
@router.get("", response_model=GroupEventPagination)
|
||||
def get_all(self, q: PaginationQuery = Depends(PaginationQuery)):
|
||||
|
||||
@@ -22,7 +22,7 @@ class GroupReportsController(BaseUserController):
|
||||
def registered_exceptions(self, ex: type[Exception]) -> str:
|
||||
return {
|
||||
**mealie_registered_exceptions(self.translator),
|
||||
}.get(ex, "An unexpected error occurred.")
|
||||
}.get(ex, self.t("generic.server-error"))
|
||||
|
||||
@cached_property
|
||||
def mixins(self):
|
||||
@@ -44,6 +44,6 @@ class GroupReportsController(BaseUserController):
|
||||
def delete_one(self, item_id: UUID4):
|
||||
try:
|
||||
self.mixins.delete_one(item_id) # type: ignore
|
||||
return SuccessResponse.respond("Report deleted.")
|
||||
return SuccessResponse.respond(self.t("report-deleted"))
|
||||
except Exception as ex:
|
||||
raise HTTPException(500, ErrorResponse.respond("Failed to delete report")) from ex
|
||||
|
||||
@@ -35,7 +35,7 @@ class MultiPurposeLabelsController(BaseUserController):
|
||||
|
||||
@property
|
||||
def mixins(self) -> HttpRepo:
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, "An unexpected error occurred.")
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, self.t("generic.server-error"))
|
||||
|
||||
@router.get("", response_model=MultiPurposeLabelPagination)
|
||||
def get_all(self, q: PaginationQuery = Depends(PaginationQuery)):
|
||||
|
||||
@@ -30,7 +30,7 @@ class GroupMealplanController(BaseCrudController):
|
||||
registered = {
|
||||
**mealie_registered_exceptions(self.translator),
|
||||
}
|
||||
return registered.get(ex, "An unexpected error occurred.")
|
||||
return registered.get(ex, self.t("generic.server-error"))
|
||||
|
||||
@cached_property
|
||||
def mixins(self):
|
||||
@@ -87,7 +87,7 @@ class GroupMealplanController(BaseCrudController):
|
||||
)
|
||||
except IndexError as e:
|
||||
raise HTTPException(
|
||||
status_code=404, detail=ErrorResponse.respond(message="No recipes match your rules")
|
||||
status_code=404, detail=ErrorResponse.respond(message=self.t("mealplan.no-recipes-match-your-rules"))
|
||||
) from e
|
||||
|
||||
@router.get("", response_model=PlanEntryPagination)
|
||||
|
||||
@@ -158,7 +158,7 @@ class ShoppingListController(BaseCrudController):
|
||||
|
||||
@cached_property
|
||||
def mixins(self) -> HttpRepo[ShoppingListCreate, ShoppingListOut, ShoppingListSave]:
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, "An unexpected error occurred.")
|
||||
return HttpRepo(self.repo, self.logger, self.registered_exceptions, self.t("generic.server-error"))
|
||||
|
||||
@router.get("", response_model=ShoppingListPagination)
|
||||
def get_all(self, q: PaginationQuery = Depends(PaginationQuery)):
|
||||
|
||||
@@ -62,7 +62,9 @@ class UserController(BaseUserController):
|
||||
def update_password(self, password_change: ChangePassword):
|
||||
"""Resets the User Password"""
|
||||
if not verify_password(password_change.current_password, self.user.password):
|
||||
raise HTTPException(status.HTTP_400_BAD_REQUEST, ErrorResponse.respond("Invalid current password"))
|
||||
raise HTTPException(
|
||||
status.HTTP_400_BAD_REQUEST, ErrorResponse.respond(self.t("user.invalid-current-password"))
|
||||
)
|
||||
|
||||
self.user.password = hash_password(password_change.new_password)
|
||||
try:
|
||||
@@ -73,7 +75,7 @@ class UserController(BaseUserController):
|
||||
ErrorResponse.respond("Failed to update password"),
|
||||
) from e
|
||||
|
||||
return SuccessResponse.respond("Password updated")
|
||||
return SuccessResponse.respond(self.t("user.password-updated"))
|
||||
|
||||
@user_router.put("/{item_id}")
|
||||
def update_user(self, item_id: UUID4, new_data: UserBase):
|
||||
@@ -99,4 +101,4 @@ class UserController(BaseUserController):
|
||||
ErrorResponse.respond("Failed to update user"),
|
||||
) from e
|
||||
|
||||
return SuccessResponse.respond("User updated")
|
||||
return SuccessResponse.respond(self.t("user.user-updated"))
|
||||
|
||||
Reference in New Issue
Block a user