Class: Users::EmailVerification::UpdateEmailService
- Inherits:
-
Object
- Object
- Users::EmailVerification::UpdateEmailService
- Includes:
- ActionView::Helpers::DateHelper
- Defined in:
- app/services/users/email_verification/update_email_service.rb
Constant Summary collapse
- RATE_LIMIT =
:email_verification_code_send
Instance Method Summary collapse
- #execute(email:) ⇒ Object
-
#initialize(user:) ⇒ UpdateEmailService
constructor
A new instance of UpdateEmailService.
Constructor Details
#initialize(user:) ⇒ UpdateEmailService
Returns a new instance of UpdateEmailService.
10 11 12 |
# File 'app/services/users/email_verification/update_email_service.rb', line 10 def initialize(user:) @user = user end |
Instance Method Details
#execute(email:) ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'app/services/users/email_verification/update_email_service.rb', line 14 def execute(email:) return failure(:rate_limited) if rate_limited? return failure(:already_offered) if already_offered? return failure(:no_change) if no_change?(email) return failure(:validation_error) unless update_email success end |