summaryrefslogtreecommitdiffstats
path: root/webapp/components
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/components')
-rw-r--r--webapp/components/admin_console/localization_settings.jsx4
-rw-r--r--webapp/components/user_settings/manage_languages.jsx35
2 files changed, 23 insertions, 16 deletions
diff --git a/webapp/components/admin_console/localization_settings.jsx b/webapp/components/admin_console/localization_settings.jsx
index b5bc28b52..7868ca8eb 100644
--- a/webapp/components/admin_console/localization_settings.jsx
+++ b/webapp/components/admin_console/localization_settings.jsx
@@ -25,8 +25,8 @@ export default class LocalizationSettings extends AdminSettings {
this.state = Object.assign(this.state, {
hasErrors: false,
languages: Object.keys(locales).map((l) => {
- return {value: locales[l].value, text: locales[l].name};
- })
+ return {value: locales[l].value, text: locales[l].name, order: locales[l].order};
+ }).sort((a, b) => a.order - b.order)
});
}
diff --git a/webapp/components/user_settings/manage_languages.jsx b/webapp/components/user_settings/manage_languages.jsx
index ed82bc666..f4ae79088 100644
--- a/webapp/components/user_settings/manage_languages.jsx
+++ b/webapp/components/user_settings/manage_languages.jsx
@@ -64,20 +64,27 @@ export default class ManageLanguage extends React.Component {
}
const options = [];
- const languages = I18n.getLanguages();
- for (const key in languages) {
- if (languages.hasOwnProperty(key)) {
- const lang = languages[key];
- options.push(
- <option
- key={lang.value}
- value={lang.value}
- >
- {lang.name}
- </option>
- );
- }
- }
+ const locales = I18n.getLanguages();
+
+ const languages = Object.keys(locales).map((l) => {
+ return {
+ value: locales[l].value,
+ name: locales[l].name,
+ order: locales[l].order
+ };
+ }).
+ sort((a, b) => a.order - b.order);
+
+ languages.forEach((lang) => {
+ options.push(
+ <option
+ key={lang.value}
+ value={lang.value}
+ >
+ {lang.name}
+ </option>
+ );
+ });
const input = (
<div key='changeLanguage'>