]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/application_controller.rb
Merge branch 'master' into openstreetbugs
[rails.git] / app / controllers / application_controller.rb
index 6e9be2de4a314d5ea4bd1638fbba83cb11a25463..6caed05940a0bf024dbd51259f67fe04a68bbf92 100644 (file)
@@ -1,4 +1,5 @@
 class ApplicationController < ActionController::Base
+  include SessionPersistence
 
   protect_from_forgery
 
@@ -250,8 +251,6 @@ class ApplicationController < ActionController::Base
 
     I18n.locale = request.compatible_language_from(I18n.available_locales) || I18n.default_locale
 
-    logger.info "Selected locale #{I18n.locale} from #{request.user_preferred_languages.inspect}"
-
     response.headers['Content-Language'] = I18n.locale.to_s
   end
 
@@ -268,7 +267,7 @@ class ApplicationController < ActionController::Base
       report_error message, :bad_request
     rescue OSM::APIError => ex
       report_error ex.message, ex.status
-    rescue ActionController::UnknownAction => ex
+    rescue AbstractController::ActionNotFound => ex
       raise
     rescue Exception => ex
       logger.info("API threw unexpected #{ex.class} exception: #{ex.message}")
@@ -335,7 +334,7 @@ class ApplicationController < ActionController::Base
     end)
 
     options[:cache_path] = Proc.new do |controller|
-      cache_path.merge(controller.params).merge(:locale => I18n.locale)
+      cache_path.merge(controller.params).merge(:host => SERVER_URL, :locale => I18n.locale)
     end
 
     actions.push(options)
@@ -347,7 +346,7 @@ class ApplicationController < ActionController::Base
   # extend expire_action to expire all variants
   def expire_action(options = {})
     I18n.available_locales.each do |locale|
-      super options.merge(:locale => locale)
+      super options.merge(:host => SERVER_URL, :locale => locale)
     end
   end