X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Flang%2Fgettext.php;h=16768d677df3041406fd406fc8c22688d7e1f1df;hb=cdea200a3f1f1c3ebb65f9afae864bf8cde43c6a;hp=f2115a9aa95a17b46932072b77faab517d6554e8;hpb=abf8f64c8e0d04e4980341e65314907197957284;p=fa-stable.git diff --git a/includes/lang/gettext.php b/includes/lang/gettext.php index f2115a9a..16768d67 100644 --- a/includes/lang/gettext.php +++ b/includes/lang/gettext.php @@ -80,10 +80,13 @@ class gettext_native_support $lshort = strtr($up, '-',''); $ushort = strtr($low, '-',''); - $set = setlocale(LC_ALL, $lang_code.".".$encoding, - $lang_code.".".$up, $lang_code.".".$low, - $lang_code.".".$ushort, $lang_code.".".$lshort); - + if ($lang_code == 'C') + $set = setlocale(LC_ALL,'C'); + else + $set = setlocale(LC_ALL, $lang_code.".".$encoding, + $lang_code.".".$up, $lang_code.".".$low, + $lang_code.".".$ushort, $lang_code.".".$lshort); + setlocale(LC_NUMERIC, 'C'); // important for numeric presentation etc. if ($set === false) { @@ -100,20 +103,21 @@ class gettext_native_support */ function check_support($lang_code, $encoding) { - $old = setlocale(LC_MESSAGES, '0'); + + $old = setlocale(LC_CTYPE, '0'); // LC_MESSAGES does not exist on Win $up = strtoupper($encoding); $low = strtolower($encoding); $lshort = strtr($up, '-',''); $ushort = strtr($low, '-',''); - $test = setlocale(LC_MESSAGES, + $test = setlocale(LC_ALL, $lang_code.".".$encoding, $lang_code.".".$up, $lang_code.".".$low, $lang_code.".".$ushort, $lang_code.".".$lshort) !== false; - - setlocale(LC_MESSAGES, $old); + setlocale(LC_ALL, $old); + setlocale(LC_NUMERIC, 'C'); return $test; } /**