]> git.openstreetmap.org Git - rails.git/commitdiff
Improve name selection with the query tool
authorTom Hughes <tom@compton.nu>
Tue, 24 Oct 2023 16:19:32 +0000 (17:19 +0100)
committerTom Hughes <tom@compton.nu>
Tue, 14 Nov 2023 17:45:50 +0000 (17:45 +0000)
Pass the full expanded list of preferred languages to the client
and use that when looking for the best name for an object.

Fixes #4310

app/assets/javascripts/application.js
app/assets/javascripts/index/query.js
app/helpers/application_helper.rb

index 5bfe86b8607b58a9458e03db6b17306ca1b88b1e..af67244bcb706604ed139f4758bb3bef504970b3 100644 (file)
@@ -124,6 +124,7 @@ $(document).ready(function () {
   I18n.fallbacks = true;
 
   OSM.preferred_editor = application_data.preferredEditor;
+  OSM.preferred_languages = application_data.preferredLanguages;
 
   if (application_data.user) {
     OSM.user = application_data.user;
index e44db9fdf0d012b4b8a3bd1f237c160e283cbabc..59c3a8b495c29638e57cd25ca677b064009f9b98 100644 (file)
@@ -125,7 +125,7 @@ OSM.Query = function (map) {
 
   function featureName(feature) {
     var tags = feature.tags,
-        locales = I18n.locales.get();
+        locales = OSM.preferred_languages;
 
     for (var i = 0; i < locales.length; i++) {
       if (tags["name:" + locales[i]]) {
index 28c97e485f372242369c444f12057aa405c64926..2fc0d808d53c87566318ac254b8f523587952726 100644 (file)
@@ -48,7 +48,8 @@ module ApplicationHelper
   def application_data
     data = {
       :locale => I18n.locale,
-      :preferred_editor => preferred_editor
+      :preferred_editor => preferred_editor,
+      :preferred_languages => preferred_languages.expand.map(&:to_s)
     }
 
     if current_user