mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 16:49:47 +03:00
Adjust preferred Language by Roles #4318
Closed
opened 2026-02-05 08:32:08 +03:00 by OVERLORD
·
5 comments
No Branch/Tag Specified
development
l10n_development
further_theme_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🔨 Feature Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#4318
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @DarkZoneSD on GitHub (Nov 14, 2023).
Describe the feature you'd like
To have the option of configuring a preferred language for a certain Role. I have attatched a mockup version of the UI implementation in the Roles configuration.

Describe the benefits this would bring to existing BookStack users
This could be very handy when implementing BookStack into an existing Active-Directory Environment for example, to migrate mass ammounts of users into a AD-Group, that can be synchronised via LDAP or similar. Having an AD-Group like "BookStack_Lang_CZ" setting the preferred lagnuage to czech would be an example.
Can the goal of this request already be achieved via other means?
By manually adding the users and selecting the preferred language, otherwise I am not aware of different solutions.
Have you searched for an existing open/closed issue?
How long have you been using BookStack?
3 months to 1 year
Additional context
No response
@ssddanbrown commented on GitHub (Nov 14, 2023):
Thanks for the suggestion @DarkZoneSD.
Personally I'm not too keen on adding options unless there's significant proven need, especially here where it could by a bit awkward since it's a user preference applied at role level, where roles can often be changed and multiple applied.
If you have any development capabilities, this is something that could likely be built onto BookStack using our logical theme system if desired. You could hook into login/registration events and update the language based on available data.
Alternatively, if you just want to bulk update with the users that are already in BookStack, the user language can be updated via the API.
@DarkZoneSD commented on GitHub (Nov 14, 2023):
Thank you for the quick reply @ssddanbrown .
That sounds doable, I'll look into it and post it if i find a proper solution to this. Alternatively, is something like a DeepL API integration into BookStacks main Branch something that would be worth considering?
@ssddanbrown commented on GitHub (Nov 14, 2023):
That's not something I'd consider to be honest. I try to avoid any kind of specific platform support/integration in BookStack, especially where that platform/service is not open.
When (If) we include specific content multi-language support then I may consider some level of abstract API to support different external translation platforms (Defaulting to an open option) but that's some way off.
Otherwise, you could create such integration already yourself if desired via our REST API and/or theme systems:
https://www.bookstackapp.com/docs/admin/hacking-bookstack/
@DarkZoneSD commented on GitHub (Nov 14, 2023):
I missed something in the documentation saying
<html>For users that are not logged-in BookStack will try to detect their language based off of information sent from their browser. If you’d prefer to force the language seen to be the
APP_LANGsetting you can set the following in your.envfile:@ssddanbrown commented on GitHub (Nov 14, 2023):
That's not an option built-in or supported right now, and it's a bit awkward to implement since we can't be sure that interaction with the user will be via browser (Email notification triggered by another user's action for example), so ideally we'd have their language preference set. You could technically track their last used matching browser language to consider as a suggestion, but then that's an extra system and value to juggle alongside the existing preference, so probably not worth it.
Is again something that could be hacked in via the logical theme system with some development hackery.