X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f32aea6d1429ef55b7e5ec60bf83576cf76d85ed..357352465c69e0bc1f4982bdd858715f850782ab:/app/controllers/accounts/terms_controller.rb?ds=sidebyside diff --git a/app/controllers/accounts/terms_controller.rb b/app/controllers/accounts/terms_controller.rb index 0513a031c..03007a532 100644 --- a/app/controllers/accounts/terms_controller.rb +++ b/app/controllers/accounts/terms_controller.rb @@ -4,8 +4,7 @@ module Accounts layout "site" - before_action :disable_terms_redirect - before_action :authorize_web + before_action -> { authorize_web(:skip_terms => true) } before_action :set_locale before_action :check_database_readable @@ -20,46 +19,31 @@ module Accounts else @title = t ".title" - if current_user&.terms_agreed? + if current_user.terms_agreed? # Already agreed to terms, so just show settings redirect_to edit_account_path - elsif current_user.nil? - redirect_to login_path(:referer => request.fullpath) end end end def update - @title = t "users.new.title" - if params[:decline] || !(params[:read_tou] && params[:read_ct]) - if current_user - current_user.terms_seen = true - - flash[:notice] = { :partial => "accounts/terms/terms_declined_flash" } if current_user.save - - referer = safe_referer(params[:referer]) if params[:referer] + current_user.terms_seen = true - redirect_to referer || edit_account_path - elsif params[:decline] - redirect_to t("users.terms.declined"), :allow_other_host => true - else - redirect_to account_terms_path - end - elsif current_user + flash[:notice] = { :partial => "accounts/terms/terms_declined_flash" } if current_user.save + else unless current_user.terms_agreed? - current_user.consider_pd = params[:user][:consider_pd] current_user.tou_agreed = Time.now.utc current_user.terms_agreed = Time.now.utc current_user.terms_seen = true - flash[:notice] = t "users.new.terms accepted" if current_user.save + flash[:notice] = t ".terms accepted" if current_user.save end + end - referer = safe_referer(params[:referer]) if params[:referer] + referer = safe_referer(params[:referer]) if params[:referer] - redirect_to referer || edit_account_path - end + redirect_to referer || edit_account_path end end end