]> git.openstreetmap.org Git - rails.git/blobdiff - lib/locale.rb
Don't fall back to name:en if it's not in the user's language list
[rails.git] / lib / locale.rb
index b0ad20fc793f4bd4332057af1002c38a39e3cfdd..56d3985760f8447455bcf93f7dd181fd949d60a3 100644 (file)
@@ -10,8 +10,8 @@ class Locale < I18n::Locale::Tag::Rfc4646
       preferred.expand & self
     end
 
-    def preferred(preferred)
-      candidates(preferred).first
+    def preferred(preferred, options = { :default => Locale.default })
+      candidates(preferred).first || options[:default]
     end
 
     def expand
@@ -19,7 +19,7 @@ class Locale < I18n::Locale::Tag::Rfc4646
                  locale.candidates.uniq.reverse_each do |candidate|
                    expanded << candidate if candidate == locale || !expanded.include?(candidate)
                  end
-               end.reverse.uniq << Locale.default)
+               end.reverse.uniq)
     end
   end