diff --git a/src/public/app/widgets/type_widgets/options/i18n/i18n.ts b/src/public/app/widgets/type_widgets/options/i18n/i18n.ts index 6f3861920..e3bf86837 100644 --- a/src/public/app/widgets/type_widgets/options/i18n/i18n.ts +++ b/src/public/app/widgets/type_widgets/options/i18n/i18n.ts @@ -3,6 +3,7 @@ import server from "../../../../services/server.js"; import utils from "../../../../services/utils.js"; import { getAvailableLocales, t } from "../../../../services/i18n.js"; import type { OptionMap } from "../../../../../../services/options_interface.js"; +import type { Locale } from "../../../../../../services/i18n.js"; const TPL = `
@@ -14,6 +15,13 @@ const TPL = `
+
+ + +
+ + +
@@ -35,6 +43,7 @@ const TPL = ` export default class LocalizationOptions extends OptionsWidget { private $localeSelect!: JQuery; + private $formattingLocaleSelect!: JQuery; doRender() { this.$widget = $(TPL); @@ -46,6 +55,8 @@ export default class LocalizationOptions extends OptionsWidget { utils.reloadFrontendApp("locale change"); }); + this.$formattingLocaleSelect = this.$widget.find(".formatting-locale-select"); + this.$widget.find(`input[name="first-day-of-week"]`).on("change", () => { const firstDayOfWeek = String(this.$widget.find(`input[name="first-day-of-week"]:checked`).val()); this.updateOption("firstDayOfWeek", firstDayOfWeek); @@ -53,14 +64,27 @@ export default class LocalizationOptions extends OptionsWidget { } async optionsLoaded(options: OptionMap) { - const availableLocales = getAvailableLocales().filter(l => !l.contentOnly); - this.$localeSelect.empty(); + const allLocales = getAvailableLocales(); - for (const locale of availableLocales) { - this.$localeSelect.append($("