How can I make general.useragent.locale variable
In our domain we have different user languages. Windows adapts it's gui depending on the username they login with. We have configured Firefox settings through GPO's and build a pakcage with the FF GPO add-in included, with also the 5 different language packs included we use in our domain. We can switch manually the GUI language, but we are looking for a way to automate this, depending on the profile language. I know we can change the user.js file, but I was wondering if there is a way to automate this through GPO's. Something like a variable we can place in the general.useragent.locale that looks for the sytem language? Or another way to automate this?
所有回复 (3)
You should be able to do this via a mozilla.cfg autoconfig file.
This file is run as JavaScript with full chrome privileges and can contain more advanced code, so you should be able to check the system language and set general.useragent.locale accordingly.
- http://mike.kaply.com/2012/03/16/customizing-firefox-autoconfig-files/
- http://mike.kaply.com/2012/03/22/customizing-firefox-advanced-autoconfig-files/
I don't know how to get the system language setting, but you should be able to read registry keys and environment variables if necessary.
Thanks for your quick response I configured the mozilla.cfg file, although wasn't able to set the variable here.
I tried adding but this did not work: var languagesetting = window.navigator.language; lockPref("general.useragent.locale", languagesetting);
Seems like the command 'window.navigator.language' is not recognised, nor is window.navigator.userLanguage
Do you have any idea how I can set this?
There is no window defined when Firefox is running the code in mozilla.cfg and anyway you would have to use other code to reference to a browser window.
You can try this code:
locale = Cc["@mozilla.org/chrome/chrome-registry;1"] .getService(Components.interfaces.nsIXULChromeRegistry).getSelectedLocale("global"); lockPref("general.useragent.locale", locale);
由cor-el于