X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/b8f6dbd403507edd14f04f3151c285e232607360..0d5be22cb517ebaaab5eb7af13150bf61e41df56:/app/controllers/application_controller.rb diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 110682947..6dbe9165c 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -31,8 +31,8 @@ class ApplicationController < ActionController::Base def require_capability(cap) # when the current token is nil, it means the user logged in with a different # method, otherwise an OAuth token was used, which has to be checked. - unless @current_token.nil? - unless @current_token.read_attribute(cap) + unless current_token.nil? + unless current_token.read_attribute(cap) render :text => "OAuth token doesn't have that capability.", :status => :forbidden return false end @@ -66,7 +66,7 @@ class ApplicationController < ActionController::Base def setup_user_auth # try and setup using OAuth if oauthenticate - @user = @current_token.user + @user = current_token.user else username, passwd = get_auth_data # parse from headers # authenticate per-scheme @@ -143,9 +143,12 @@ class ApplicationController < ActionController::Base end def set_locale + response.header['Vary'] = 'Accept-Language' + if @user if !@user.languages.empty? request.user_preferred_languages = @user.languages + response.header['Vary'] = '*' elsif !request.user_preferred_languages.empty? @user.languages = request.user_preferred_languages @user.save