X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/b45eb03a6c026ec0f19415100c7bb14c4c53e6cb..87e7f887f5da0c38b110425c9bf97b03ce728724:/app/controllers/accounts/terms_controller.rb diff --git a/app/controllers/accounts/terms_controller.rb b/app/controllers/accounts/terms_controller.rb index 0513a031c..45e0cc239 100644 --- a/app/controllers/accounts/terms_controller.rb +++ b/app/controllers/accounts/terms_controller.rb @@ -20,46 +20,32 @@ 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