The default language detected by Decidim does not always work as expected and does not respect organization defaults.
Currently, it tries to detect the user's default language from the browser's Accept-Language header. But that only works if this header is 2 chars long (ie: 'ca' will be detected, 'ca-ES' won't be detected). Full header are usually like 'es,en-US;q=0.8,ca;q=0.5,en;q=0.3'.
Also, when the language is not detected (or does not exists in Decidim) fallback to the default language configured in the application code and ignores the default language from the organization.
This is the PR that solves this:
https://github.com/decidim/decidim/pull/5272
Share