Category edit dialog: default groups sometimes not translated

AI 生成的摘要

A discussion is taking place about the translation of default group names in the category edit dialog. claas has identified an issue where the group names (everyone, admins, moderators, staff) are not consistently translated, and has provided images to illustrate the problem.

claas has also dug deeper into the issue and found that:

  • The category details come from app/controllers/categories_controller.rb#show
  • Group names are translated in app/models/group.rb
  • The everyone group is a special group
  • The security tab in the category edit dialog comes from app/assets/javascripts/discourse/templates/components/edit-category-security.hbs

claas suggests that the solution could be to have the CategoriesController return permissions with two keys group_name and group_name_localized.

Thamer is also experiencing issues with translating the “Staff” group and related notifications, and is looking for a solution.

When creating or editing a category, the default group names (everyone, admins, moderators, staff) should be translated. However, sometimes this is not the case:

1. Create a new category Test (without changing any permission):

:white_check_mark: Group name everyone (jeder) is translated in permission list.
:x: Group names are not translated in group selection (e.g. staff should be Mitarbeiter).

2. Edit the created category Test

:x: Group name everyone is not translated in permission list.
:x: Group names are not translated in group selection, except everyone (jeder).

3. Set permissions explicitly

Same as 2.

PS: Interestingly, the trust_level group names are translated.

2 个赞

Here’s what I found out:

  1. The category details for the dialog comes from app/controllers/categories_controller.rb#show, which gets the permissions from app/models/category.rb#scoped_to_permissions
  2. Group names are translated in app/models/group.rb.
  3. The everyone group is a special group.
  4. The security tab in the category edit dialog comes from app/assets/javascripts/discourse/templates/components/edit-category-security.hbs and the group name is inserted here (as it comes from the controller/ajax request).

Maybe the best solution would be to have the CategoriesController return permission with two keys group_name and group_name_localized? We would probably need to make sure that group_name_localized is equal to the group_name for custom/user-created groups.

2 个赞

你好,我的朋友,

你能找到一个好的解决方案吗?

我也正在尝试在我的页面上翻译所有与“Staff”组相关的通知和其他内容。我可以翻译该组的名称,但无法准确翻译论坛其他句子中出现的“staff”一词。

希望不要丢失这个旧帖子。