summaryrefslogtreecommitdiffstats
path: root/src/etc/inc/pfsense-utils.inc
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2016-01-21 19:10:21 -0200
committerRenato Botelho <renato@netgate.com>2016-01-21 19:12:10 -0200
commitceecd29b53b7d570b56fb391a09abb71fe80566b (patch)
treea764684df84eb4a876c9d8dda490cf37f18e1100 /src/etc/inc/pfsense-utils.inc
parentb50d30c3a6d29b02cc7f4fe66f3a16bc7a4ea1a6 (diff)
downloadpfsense-ceecd29b53b7d570b56fb391a09abb71fe80566b.zip
pfsense-ceecd29b53b7d570b56fb391a09abb71fe80566b.tar.gz
Fix #5690:
- Remove parameters from set_language() - Add a global variable for default language - add env var for LANG, otherwise it won't work
Diffstat (limited to 'src/etc/inc/pfsense-utils.inc')
-rw-r--r--src/etc/inc/pfsense-utils.inc20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/etc/inc/pfsense-utils.inc b/src/etc/inc/pfsense-utils.inc
index ae00bee..5a0a34e 100644
--- a/src/etc/inc/pfsense-utils.inc
+++ b/src/etc/inc/pfsense-utils.inc
@@ -2756,11 +2756,21 @@ function pfSense_handle_custom_code($src_dir) {
}
}
-function set_language($lang = 'en_US', $encoding = "UTF-8") {
- setlocale(LC_ALL, "{$lang}.{$encoding}");
- textdomain("pfSense");
- bindtextdomain("pfSense", "/usr/local/share/locale");
- bind_textdomain_codeset("pfSense", "{$lang}.{$encoding}");
+function set_language() {
+ global $config, $g;
+
+ if (!empty($config['system']['language'])) {
+ $lang = $config['system']['language'];
+ } elseif (!empty($g['language'])) {
+ $lang = $g['language'];
+ }
+ $lang .= ".UTF-8";
+
+ putenv("LANG={$lang}");
+ $r = setlocale(LC_ALL, $lang);
+ $r = textdomain("pfSense");
+ $r = bindtextdomain("pfSense", "/usr/local/share/locale");
+ $r = bind_textdomain_codeset("pfSense", $lang);
}
function get_locale_list() {
OpenPOWER on IntegriCloud