diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-06-16 21:25:58 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-06-16 21:25:58 +0300 |
commit | a5f4bba440d7f9ea47046a0a561d49adf0a1e6d4 (patch) | |
tree | fb69158581673816a8cd895f9d352dcb3c678b1e /app/controllers/admin/users_controller.rb | |
parent | d16b2e8639e99961de6ddc93909f3bb5c1445ba1 (diff) |
Add latest changes from gitlab-org/gitlab@14-0-stable-eev14.0.0-rc42
Diffstat (limited to 'app/controllers/admin/users_controller.rb')
-rw-r--r-- | app/controllers/admin/users_controller.rb | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index 2e9229db56c..e397ecbadaf 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -209,6 +209,9 @@ class Admin::UsersController < Admin::ApplicationController user_params_with_pass.merge!(password_params) end + cc_validation_params = process_credit_card_validation_params(user_params_with_pass.delete(:credit_card_validation_attributes)) + user_params_with_pass.merge!(cc_validation_params) + respond_to do |format| result = Users::UpdateService.new(current_user, user_params_with_pass.merge(user: user)).execute do |user| user.skip_reconfirmation! @@ -253,6 +256,27 @@ class Admin::UsersController < Admin::ApplicationController protected + def process_credit_card_validation_params(cc_validation_params) + return unless cc_validation_params && cc_validation_params[:credit_card_validated_at] + + cc_validation = cc_validation_params[:credit_card_validated_at] + + if cc_validation == "1" && !user.credit_card_validated_at + { + credit_card_validation_attributes: { + credit_card_validated_at: Time.zone.now + } + } + + elsif cc_validation == "0" && user.credit_card_validated_at + { + credit_card_validation_attributes: { + _destroy: true + } + } + end + end + def paginate_without_count? counts = Gitlab::Database::Count.approximate_counts([User]) @@ -330,7 +354,8 @@ class Admin::UsersController < Admin::ApplicationController :twitter, :username, :website_url, - :note + :note, + credit_card_validation_attributes: [:credit_card_validated_at] ] end |