choose first if (!$language_no_q) { if (file_exists(LANG_DIR . $lang_code[0]) && ($lang_code[1] != 'q' || $q < $lang_code[2])) { $locale = $lang_code[0]; if( $lang_code[1] != 'q') { $q = 1.0; $language_no_q = TRUE; } else { $q = $lang_code[1]; } } } } } } else { $locale = "en"; } return $locale; } /** * Write language to environment */ function i18n_settext_language($i18n, $language_dir = LANG_DIR) { global $_PAGE_INFO; if (strlen($i18n)) { putenv("LANGUAGE=" . $i18n); putenv("LANG=" . $i18n); putenv("LC_ALL=" . $i18n); // Restore time and numeric, this to prevent javascript/mysql errors setlocale(LC_ALL, $i18n); setlocale(LC_TIME, 'C'); setlocale(LC_NUMERIC, 'C'); // Define charset header("Content-Type: text/html; charset=" . $_PAGE_INFO['charset']); } if (strlen($language_dir)) { $textdomain = DOMAIN; if( preg_match("|^.*/release/([^/]+)/.+$|", $language_dir, $release) || preg_match("|^/home/([^/]+)/.*$|", $language_dir, $release) ) { $textdomain .= "-" . $release[1]; } bindtextdomain($textdomain, $language_dir); textdomain($textdomain); } } ?>