added service in the rest of controllers and classes
This commit is contained in:
parent
bf3a3f3652
commit
158550cf37
7 changed files with 13 additions and 12 deletions
|
@ -3,7 +3,7 @@ class Profiles::AvatarsController < Profiles::ApplicationController
|
||||||
@user = current_user
|
@user = current_user
|
||||||
@user.remove_avatar!
|
@user.remove_avatar!
|
||||||
|
|
||||||
@user.save
|
Users::UpdateService.new(@user, @user).execute
|
||||||
|
|
||||||
redirect_to profile_path, status: 302
|
redirect_to profile_path, status: 302
|
||||||
end
|
end
|
||||||
|
|
|
@ -10,7 +10,7 @@ class Profiles::TwoFactorAuthsController < Profiles::ApplicationController
|
||||||
current_user.otp_grace_period_started_at = Time.current
|
current_user.otp_grace_period_started_at = Time.current
|
||||||
end
|
end
|
||||||
|
|
||||||
current_user.save! if current_user.changed?
|
Users::UpdateService.new(current_user, current_user).execute!
|
||||||
|
|
||||||
if two_factor_authentication_required? && !current_user.two_factor_enabled?
|
if two_factor_authentication_required? && !current_user.two_factor_enabled?
|
||||||
two_factor_authentication_reason(
|
two_factor_authentication_reason(
|
||||||
|
@ -43,7 +43,7 @@ class Profiles::TwoFactorAuthsController < Profiles::ApplicationController
|
||||||
if current_user.validate_and_consume_otp!(params[:pin_code])
|
if current_user.validate_and_consume_otp!(params[:pin_code])
|
||||||
current_user.otp_required_for_login = true
|
current_user.otp_required_for_login = true
|
||||||
@codes = current_user.generate_otp_backup_codes!
|
@codes = current_user.generate_otp_backup_codes!
|
||||||
current_user.save!
|
Users::UpdateService.new(current_user, current_user).execute!
|
||||||
|
|
||||||
render 'create'
|
render 'create'
|
||||||
else
|
else
|
||||||
|
@ -71,7 +71,7 @@ class Profiles::TwoFactorAuthsController < Profiles::ApplicationController
|
||||||
|
|
||||||
def codes
|
def codes
|
||||||
@codes = current_user.generate_otp_backup_codes!
|
@codes = current_user.generate_otp_backup_codes!
|
||||||
current_user.save!
|
Users::UpdateService.new(current_user, current_user).execute!
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
|
|
|
@ -61,7 +61,7 @@ class SessionsController < Devise::SessionsController
|
||||||
return unless user && user.require_password?
|
return unless user && user.require_password?
|
||||||
|
|
||||||
token = user.generate_reset_token
|
token = user.generate_reset_token
|
||||||
user.save
|
Users::UpdateService.new(user, user).execute
|
||||||
|
|
||||||
redirect_to edit_user_password_path(reset_password_token: token),
|
redirect_to edit_user_password_path(reset_password_token: token),
|
||||||
notice: "Please create a password for your new account."
|
notice: "Please create a password for your new account."
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
module Users
|
module Users
|
||||||
# Service for creating a new user.
|
# Service for updating a user.
|
||||||
class UpdateService < BaseService
|
class UpdateService < BaseService
|
||||||
def initialize(current_user, user, params = {})
|
def initialize(current_user, user, params = {})
|
||||||
@current_user = current_user
|
@current_user = current_user
|
||||||
|
@ -7,10 +7,10 @@ module Users
|
||||||
@params = params.dup
|
@params = params.dup
|
||||||
end
|
end
|
||||||
|
|
||||||
def execute(skip_authorization: false, &block)
|
def execute(skip_authorization: false, validate: true, &block)
|
||||||
assign_attributes(skip_authorization, &block)
|
assign_attributes(skip_authorization, &block)
|
||||||
|
|
||||||
if @user.save || !@user.changed? && @user.errors.empty?
|
if @user.save(validate: validate) || !@user.changed? && @user.errors.empty?
|
||||||
success
|
success
|
||||||
else
|
else
|
||||||
error(@user.errors.full_messages.uniq.join('. '))
|
error(@user.errors.full_messages.uniq.join('. '))
|
||||||
|
|
|
@ -133,7 +133,7 @@ module API
|
||||||
end
|
end
|
||||||
|
|
||||||
codes = user.generate_otp_backup_codes!
|
codes = user.generate_otp_backup_codes!
|
||||||
user.save!
|
::Users::UpdateService.new(user, user).execute!
|
||||||
|
|
||||||
{ success: true, recovery_codes: codes }
|
{ success: true, recovery_codes: codes }
|
||||||
end
|
end
|
||||||
|
|
|
@ -278,7 +278,7 @@ module API
|
||||||
|
|
||||||
email.destroy
|
email.destroy
|
||||||
|
|
||||||
Users::UpdateService.new(current_user, user).execute do |user|
|
::Users::UpdateService.new(current_user, user).execute do |user|
|
||||||
user.update_secondary_emails!
|
user.update_secondary_emails!
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -511,7 +511,7 @@ module API
|
||||||
not_found!('Email') unless email
|
not_found!('Email') unless email
|
||||||
|
|
||||||
email.destroy
|
email.destroy
|
||||||
Users::UpdateService.new(current_user, user).execute do |user|
|
::Users::UpdateService.new(current_user, user).execute do |user|
|
||||||
user.update_secondary_emails!
|
user.update_secondary_emails!
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -17,7 +17,8 @@ module Gitlab
|
||||||
self.open(user) do |access|
|
self.open(user) do |access|
|
||||||
if access.allowed?
|
if access.allowed?
|
||||||
user.last_credential_check_at = Time.now
|
user.last_credential_check_at = Time.now
|
||||||
user.save
|
Users::UpdateService.new(user, user).execute
|
||||||
|
|
||||||
true
|
true
|
||||||
else
|
else
|
||||||
false
|
false
|
||||||
|
|
Loading…
Reference in a new issue