Class: SpreeCmCommissioner::AccountRecover
- Inherits:
-
BaseInteractor
- Object
- BaseInteractor
- SpreeCmCommissioner::AccountRecover
- Defined in:
- app/interactors/spree_cm_commissioner/account_recover.rb
Instance Method Summary collapse
Instance Method Details
#call ⇒ Object
5 6 7 8 |
# File 'app/interactors/spree_cm_commissioner/account_recover.rb', line 5 def call validate_user recover_user end |
#recover_user ⇒ Object
10 11 12 13 |
# File 'app/interactors/spree_cm_commissioner/account_recover.rb', line 10 def recover_user updated = context.user.update(account_deletion_at: nil, account_restored_at: Time.current) context.fail!(message: user.errors..to_sentence) unless updated end |
#validate_user ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'app/interactors/spree_cm_commissioner/account_recover.rb', line 15 def validate_user # get email password user if login.present? && password.present? context.user = Spree.user_class.find_user_by_login(login) # get social user elsif id_token.present? checker_context = SpreeCmCommissioner::UserIdTokenChecker.call(id_token: id_token) context.user = checker_context.user end if context.user.present? context.fail!(message: 'User is not temporary deleted') unless context.user.soft_deleted? else context.fail!(message: 'User is not valid') end end |