diff --git a/config/config.ini.example b/config/config.ini.example index e4abce3..d4cfc42 100644 --- a/config/config.ini.example +++ b/config/config.ini.example @@ -7,8 +7,8 @@ timezone = "Asia/Jakarta" ; Date format. See: https://www.php.net/manual/en/function.strftime date.format = "%d %B %Y" -; Your language (currently only "en" for English or "de" for German) -language = "en" +; Your language (example "en_US" for English or "de_DE" for German. See lang directory for available language) +language = "en_US" ; Blog info blog.title = "HTMLy" diff --git a/lang/de.ini b/lang/de_DE.ini similarity index 100% rename from lang/de.ini rename to lang/de_DE.ini diff --git a/lang/en.ini b/lang/en_US.ini similarity index 100% rename from lang/en.ini rename to lang/en_US.ini diff --git a/lang/es.ini b/lang/es_ES.ini similarity index 100% rename from lang/es.ini rename to lang/es_ES.ini diff --git a/lang/fr.ini b/lang/fr_FR.ini similarity index 100% rename from lang/fr.ini rename to lang/fr_FR.ini diff --git a/lang/it.ini b/lang/it_IT.ini similarity index 100% rename from lang/it.ini rename to lang/it_IT.ini diff --git a/lang/pl.ini b/lang/pl_PL.ini similarity index 100% rename from lang/pl.ini rename to lang/pl_PL.ini diff --git a/lang/ru.ini b/lang/ru_RU.ini similarity index 100% rename from lang/ru.ini rename to lang/ru_RU.ini diff --git a/lang/sv.ini b/lang/sv_SE.ini similarity index 100% rename from lang/sv.ini rename to lang/sv_SE.ini diff --git a/lang/tr.ini b/lang/tr_TR.ini similarity index 100% rename from lang/tr.ini rename to lang/tr_TR.ini diff --git a/lang/zh-tw.ini b/lang/zh_TW.ini similarity index 100% rename from lang/zh-tw.ini rename to lang/zh_TW.ini diff --git a/system/includes/functions.php b/system/includes/functions.php index afb1c67..e11b404 100644 --- a/system/includes/functions.php +++ b/system/includes/functions.php @@ -3216,24 +3216,12 @@ function get_language() $local = $langID; // Settings for the language - if (!isset($langID) || config('language') === 'en' || !file_exists($langFile)) { - if (!isset($langID) || config('language') === 'en') { - i18n('source', 'lang/en.ini'); // Load the English language file - setlocale(LC_ALL, 'en_US', 'en_US.utf8', 'English'); // Change locale to English + if (!isset($langID) || config('language') === 'en' || config('language') === 'en_US' || !file_exists($langFile)) { + i18n('source', 'lang/en_US.ini'); // Load the English language file + setlocale(LC_ALL, 'en_US.utf8'); // Change locale to English } else { i18n('source', $langFile); - - // Locales are known under different names on different systems; I don't know any other way - // to handle this than to add a list of locale names for each language. - if ($langID === 'de') { - setlocale(LC_ALL, 'de_DE', 'de_DE.utf8', 'German'); - } - elseif ($langID === 'sv') { - setlocale(LC_ALL, 'sv_SE', 'sv_SE.utf8', 'Swedish'); - } - elseif ($langID === 'pl') { - setlocale(LC_ALL, 'pl_PL', 'pl_PL.utf8', 'Polish'); - } + setlocale(LC_ALL, $local . '.utf8'); } }