diff --git a/src/Core/L10n.php b/src/Core/L10n.php index 90d4c0fe51..33c6704436 100644 --- a/src/Core/L10n.php +++ b/src/Core/L10n.php @@ -340,9 +340,10 @@ class L10n * * Scans the view/lang directory for the existence of "strings.php" files, and * returns an alphabetical list of their folder names (@-char language codes). - * Adds the english language if it's missing from the list. + * Adds the english language if it's missing from the list. Folder names are + * replaced by nativ language names. * - * Ex: array('de' => 'de', 'en' => 'en', 'fr' => 'fr', ...) + * Ex: array('de' => 'Deutsch', 'en' => 'English', 'fr' => 'Français', ...) * * @return array */ @@ -350,6 +351,33 @@ class L10n { $langs = []; $strings_file_paths = glob('view/lang/*/strings.php'); + $lang_names = [ + 'ar' => 'العربية', + 'bg' => 'Български', + 'ca' => 'Català', + 'cs' => 'Česky', + 'de' => 'Deutsch', + 'en-gb' => 'English (United Kingdom)', + 'en-us' => 'English (United States)', + 'en' => 'English (Default)', + 'eo' => 'Esperanto', + 'es' => 'Español', + 'et' => 'Eesti', + 'fi-fi' => 'Suomi', + 'fr' => 'Français', + 'hu' => 'Magyar', + 'is' => 'Íslenska', + 'it' => 'Italiano', + 'ja' => '日本語', + 'nb-no' => 'Norsk bokmål', + 'nl' => 'Nederlands', + 'pl' => 'Polski', + 'pt-br' => 'Português Brasileiro', + 'ro' => 'Română', + 'ru' => 'Русский', + 'sv' => 'Svenska', + 'zh-cn' => '简体中文', + ]; if (is_array($strings_file_paths) && count($strings_file_paths)) { if (!in_array('view/lang/en/strings.php', $strings_file_paths)) { @@ -358,7 +386,7 @@ class L10n asort($strings_file_paths); foreach ($strings_file_paths as $strings_file_path) { $path_array = explode('/', $strings_file_path); - $langs[$path_array[2]] = $path_array[2]; + $langs[$path_array[2]] = isset($lang_names[$path_array[2]]) ? $lang_names[$path_array[2]] : $path_array[2]; } } return $langs;