Default language code changed from 'en_GB' to 'C'.
[fa-stable.git] / includes / lang / gettext.php
index f2115a9aa95a17b46932072b77faab517d6554e8..16768d677df3041406fd406fc8c22688d7e1f1df 100644 (file)
@@ -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;
        }
     /**