X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fpgettext.php;h=49f10073702f8b58e5995eec45bcc8a821bfa220;hb=55112cfdd0dc63c8ad7f719aea5b46db37fcf081;hp=2ffee70bcc64c8fcae9909643e1bfc7cab2f46d1;hpb=878bdeccfd66b7b8229fd761c23ba13bc51c7454;p=friendica.git diff --git a/include/pgettext.php b/include/pgettext.php index 2ffee70bcc..49f1007370 100644 --- a/include/pgettext.php +++ b/include/pgettext.php @@ -1,8 +1,89 @@ 0.8 + $langs = array_combine($lang_parse[1], $lang_parse[4]); + + // set default to 1 for any without q factor + foreach ($langs as $lang => $val) { + if ($val === '') $langs[$lang] = 1; + } + + // sort list based on value + arsort($langs, SORT_NUMERIC); + } + } + + if(isset($langs) && count($langs)) { + foreach ($langs as $lang => $v) { + if(file_exists("view/$lang") && is_dir("view/$lang")) { + $preferred = $lang; + break; + } + } + } + + if(isset($preferred)) + return $preferred; + + return ((isset($a->config['system']['language'])) ? $a->config['system']['language'] : 'en'); +}} + + +function push_lang($language) { + global $lang, $a; + + $a->langsave = $lang; + + if($language === $lang) + return; + + if(isset($a->strings) && count($a->strings)) { + $a->stringsave = $a->strings; + } + $a->strings = array(); + load_translation_table($language); + $lang = $language; +} + +function pop_lang() { + global $lang, $a; + + if($lang === $a->langsave) + return; + + if(isset($a->stringsave)) + $a->strings = $a->stringsave; + else + $a->strings = array(); + + $lang = $a->langsave; +} + + // load string translation table for alternate language if(! function_exists('load_translation_table')) {