]> git.openstreetmap.org Git - rails.git/blobdiff - app/helpers/browse_helper.rb
Use bootstrap_form as the formbuilder for GPX upload form
[rails.git] / app / helpers / browse_helper.rb
index 2c414004d4516b1fec2ed9887e8801eb056f22f3..2f61631b7d2c356f28b5948277dca98258424ae4 100644 (file)
@@ -1,5 +1,3 @@
-require "cgi"
-
 module BrowseHelper
   def printable_name(object, version = false)
     id = if object.id.is_a?(Array)
@@ -13,9 +11,9 @@ module BrowseHelper
     # don't look at object tags if redacted, so as to avoid giving
     # away redacted version tag information.
     unless object.redacted?
-      locale = I18n.locale.to_s
+      available_locales = Locale.list(name_locales(object))
 
-      locale = locale.sub(/-[^-]+/, "") while locale =~ /-[^-]+/ && !object.tags.include?("name:#{I18n.locale}")
+      locale = available_locales.preferred(preferred_languages)
 
       if object.tags.include? "name:#{locale}"
         name = t "printable_name.with_name_html", :name => content_tag(:bdi, object.tags["name:#{locale}"].to_s), :id => content_tag(:bdi, name)
@@ -73,4 +71,8 @@ module BrowseHelper
   def icon_tags(object)
     object.tags.find_all { |k, _v| ICON_TAGS.include? k }.sort
   end
+
+  def name_locales(object)
+    object.tags.keys.map { |k| Regexp.last_match(1) if k =~ /^name:(.*)$/ }.flatten
+  end
 end