Administer > Site configuration > Languages
=====================
When an Administrator selects
"Path prefix with language fallback" option
from
the "Language negotiation" options
=====================
# Case:
----------
say, if I use my Korean friend's system whose system locale is "ko_euc-kr" - default for Korean OS
but I still set my defualt language as "English" - otherwise I wouldn't be able to understand
when I log in with my account
displayed language falls back to Korean - in my understanding, my account's language setting should overide the 'fallback' language.
---
so, the priority should be in the order indicated below (written in psuedo code):
-----
$lang=Application default;
if(HTTP_ACCEPTED_LANGUAGE)
$lang=HTTP_ACCEPTED_LANGUAGE; //fallback
if(USER_ACCOUNT_LANG)
$lang=USER_ACCOUNT_LANG;
-----
=====================
I might be missing some important factor that the script is written such a way, but this is how I understand.
Thanks for your hard work to make Drupal a better CMS!
Cheers!
Comments
Comment #1
avpadernoI guess that fallback language simply means the language used if the language set by the browser is not active in the Drupal site.
I am not sure of the priority existing between the user language, and the system language.
Comment #2
damien tournoud commentedLanguage negotiation "Path prefix with language fallback" means:
* if there is an explicit language prefix in the URL, use that (/en, /de, etc.)
* if there is none, try to use the user's default if available (ie. if the user is logged in), fallback to the browser default, then fallback to the system language.
If you first visit the site without a language prefix *and* your browser is sending "ko_euc-kr" headers, the display should appear in Korean, and this will stick after login, before you will get redirected to an explicitely prefixed URL. This is by design.