]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/application_controller.rb
Try preferred_language_from as it looks for an exact match - only if that
[rails.git] / app / controllers / application_controller.rb
index d7debcb6d43ffb7e40c48e29f352fff930da9198..00104b0a174d618292cf0958c0d4c00c693e7c5a 100644 (file)
@@ -45,7 +45,6 @@ class ApplicationController < ActionController::Base
     # handle authenticate pass/fail
     unless @user
       # no auth, the user does not exist or the password was wrong
-      response.headers["Status"] = "Unauthorized" 
       response.headers["WWW-Authenticate"] = "Basic realm=\"#{realm}\"" 
       render :text => errormessage, :status => :unauthorized
       return false
@@ -111,8 +110,9 @@ class ApplicationController < ActionController::Base
       end
     end
 
-    I18n.locale = request.compatible_language_from(I18n.available_locales)
-
+    I18n.locale = request.preferred_language_from(I18n.available_locales) ||
+                  request.compatible_language_from(I18n.available_locales)
+    logger.info("Select #{I18n.locale} matching #{request.user_preferred_languages.join(',')} against #{I18n.available_locales.join(',')}")
     response.headers['Content-Language'] = I18n.locale.to_s
   end