main ← fix-use-group-ids-instead-of-names
merged 02:46PM - 12 Dec 25 UTC
In non-English forums, the "everyone" group name is localized (e.g., "jeder" in …German). The frontend was comparing against the hardcoded English string "everyone", which caused several issues:
- Broken links (linking to `/g/jeder` instead of showing plain text)
- Permission checkboxes not being properly disabled
- Permission protection logic failing for the everyone group
The fix uses `group_id` instead of `group_name` for identifying the "everyone" group, since the ID (0) is constant regardless of locale.
Changes:
- Add `group_id` to category permissions in CategorySerializer
- Update frontend to compare against `AUTO_GROUPS.everyone.id`
- Replace all hardcoded group ID checks (0) with `AUTO_GROUPS.everyone.id`
- Replace hardcoded group name checks with `AUTO_GROUPS.*.name`
Ref - meta/t/335600