X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/a19ee80c1ee51507a661cb57556d44ee56cc42ad..248b5fa1aefb8c7b4ece818ad3720992f2487fe2:/app/assets/javascripts/application.js diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 99bfede7e..c8f188a2e 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -11,16 +11,24 @@ //= require leaflet.zoom //= require leaflet.locationfilter //= require i18n +//= require make-plural/cardinals //= require matomo //= require richtext { const application_data = $("head").data(); + const locale = application_data.locale; I18n.default_locale = OSM.DEFAULT_LOCALE; - I18n.locale = application_data.locale; + I18n.locale = locale; I18n.fallbacks = true; + // '-' are replaced with '_' in https://github.com/eemeli/make-plural/tree/main/packages/plurals + const pluralizer = plurals[locale.replace(/\W+/g, "_")] || plurals[locale.split("-")[0]]; + if (pluralizer) { + I18n.pluralization[locale] = (count) => [pluralizer(count), "other"]; + } + OSM.preferred_editor = application_data.preferredEditor; OSM.preferred_languages = application_data.preferredLanguages; @@ -84,7 +92,7 @@ window.updateLinks = function (loc, zoom, layers, object) { .toggleClass("disabled", editDisabled); }; -$(document).ready(function () { +$(function () { // NB: Turns Turbo Drive off by default. Turbo Drive must be opt-in on a per-link and per-form basis // See https://turbo.hotwired.dev/reference/drive#turbo.session.drive Turbo.session.drive = false;