]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib/lib.php
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / lib / lib.php
index 482e95981cc04b7aab021eb82e979c9e950727a9..07d5bcf370c60a1e1fe3078480ca9857406f3df6 100644 (file)
        }
 
 
-       function getPreferredLanguages()
+       function getPreferredLanguages($sLangString=false)
        {
-               // If we have been provided the value in $_GET it overrides browser value
-               if (isset($_GET['accept-language']) && $_GET['accept-language'])
+               if (!$sLangString)
                {
-                       $_SERVER["HTTP_ACCEPT_LANGUAGE"] = $_GET['accept-language'];
+                       // If we have been provided the value in $_GET it overrides browser value
+                       if (isset($_GET['accept-language']) && $_GET['accept-language'])
+                       {
+                               $_SERVER["HTTP_ACCEPT_LANGUAGE"] = $_GET['accept-language'];
+                               $sLangString = $_GET['accept-language'];
+                       }
+                       else if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"]))
+                       {
+                               $sLangString = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
+                       }
                }
 
                $aLanguages = array();
-               if (isset($_SERVER["HTTP_ACCEPT_LANGUAGE"]))
+               if ($sLangString)
                {
-                       if (preg_match_all('/(([a-z]{1,8})(-[a-z]{1,8})?)\s*(;\s*q\s*=\s*(1|0\.[0-9]+))?/i', $_SERVER['HTTP_ACCEPT_LANGUAGE'], $aLanguagesParse, PREG_SET_ORDER))
+                       if (preg_match_all('/(([a-z]{1,8})(-[a-z]{1,8})?)\s*(;\s*q\s*=\s*(1|0\.[0-9]+))?/i', $sLangString, $aLanguagesParse, PREG_SET_ORDER))
                        {
                                foreach($aLanguagesParse as $iLang => $aLanguage)
                                {