summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-03-03 12:08:07 -0800
committerBrion Vibber <brion@pobox.com>2010-03-03 12:10:43 -0800
commit0881eba80eabfea65919be2f3d65235ccd0b5eb6 (patch)
treefb35ebd6ac9f762720fa48c85436b1b0d6d1142e
parentc82efb7fd8ba28b854020821246878fc0a8cec2b (diff)
Language setting fixes:
- switch 'en_US' to 'en', fixes the "admin panel switches to Arabic" bug - tweak setting descriptions to clarify that most of the time we'll be using browser language - add a backend switch to disable language detection (should this be exposed to ui?)
-rw-r--r--actions/siteadminpanel.php4
-rw-r--r--index.php1
-rw-r--r--lib/default.php3
-rw-r--r--lib/util.php12
4 files changed, 12 insertions, 8 deletions
diff --git a/actions/siteadminpanel.php b/actions/siteadminpanel.php
index 8c8f8b374..4b29819b7 100644
--- a/actions/siteadminpanel.php
+++ b/actions/siteadminpanel.php
@@ -277,8 +277,8 @@ class SiteAdminPanelForm extends AdminForm
$this->unli();
$this->li();
- $this->out->dropdown('language', _('Language'),
- get_nice_language_list(), _('Default site language'),
+ $this->out->dropdown('language', _('Default language'),
+ get_nice_language_list(), _('Site language when autodetection from browser settings is not available'),
false, $this->value('language'));
$this->unli();
diff --git a/index.php b/index.php
index 06ff9900f..a46bc084d 100644
--- a/index.php
+++ b/index.php
@@ -253,6 +253,7 @@ function main()
$user = common_current_user();
// initialize language env
+common_log(LOG_DEBUG, "XXX: WAIII");
common_init_language();
diff --git a/lib/default.php b/lib/default.php
index 7b50242ae..b7216045c 100644
--- a/lib/default.php
+++ b/lib/default.php
@@ -40,7 +40,8 @@ $default =
'logdebug' => false,
'fancy' => false,
'locale_path' => INSTALLDIR.'/locale',
- 'language' => 'en_US',
+ 'language' => 'en',
+ 'langdetect' => true,
'languages' => get_all_languages(),
'email' =>
array_key_exists('SERVER_ADMIN', $_SERVER) ? $_SERVER['SERVER_ADMIN'] : null,
diff --git a/lib/util.php b/lib/util.php
index 46be920fa..da2799d4f 100644
--- a/lib/util.php
+++ b/lib/util.php
@@ -105,11 +105,13 @@ function common_language()
// Otherwise, find the best match for the languages requested by the
// user's browser...
- $httplang = isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? $_SERVER['HTTP_ACCEPT_LANGUAGE'] : null;
- if (!empty($httplang)) {
- $language = client_prefered_language($httplang);
- if ($language)
- return $language;
+ if (common_config('site', 'langdetect')) {
+ $httplang = isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? $_SERVER['HTTP_ACCEPT_LANGUAGE'] : null;
+ if (!empty($httplang)) {
+ $language = client_prefered_language($httplang);
+ if ($language)
+ return $language;
+ }
}
// Finally, if none of the above worked, use the site's default...