Move clean pendings used from model to interactor base

This commit is contained in:
Alex Sherman 2020-11-26 16:13:50 +05:00
parent 8ef748fc7d
commit 6f0b8b15a3
3 changed files with 25 additions and 23 deletions

View file

@ -25,5 +25,25 @@ module DomainUpdateConfirmInteraction
attached_obj_type: domain.class.to_s attached_obj_type: domain.class.to_s
) )
end end
def preclean_pendings
domain.registrant_verification_token = nil
domain.registrant_verification_asked_at = nil
end
def clean_pendings!
domain.registrant_verification_token = nil
domain.registrant_verification_asked_at = nil
domain.pending_json = {}
clear_statuses
end
def clear_statuses
domain.statuses.delete(DomainStatus::PENDING_DELETE_CONFIRMATION)
domain.statuses.delete(DomainStatus::PENDING_UPDATE)
domain.statuses.delete(DomainStatus::PENDING_DELETE)
domain.status_notes[DomainStatus::PENDING_UPDATE] = ''
domain.status_notes[DomainStatus::PENDING_DELETE] = ''
end
end end
end end

View file

@ -21,32 +21,14 @@ module DomainUpdateConfirmInteraction
WhoisRecord.find_by(domain_id: domain.id).save # need to reload model WhoisRecord.find_by(domain_id: domain.id).save # need to reload model
end end
def preclean_pendings # rubocop:disable Metrics/AbcSize
domain.registrant_verification_token = nil
domain.registrant_verification_asked_at = nil
end
def update_domain def update_domain
user = ApiUser.find(domain.pending_json['current_user_id']) user = ApiUser.find(domain.pending_json['current_user_id'])
frame = Nokogiri::XML(domain.pending_json['frame']) frame = Nokogiri::XML(domain.pending_json['frame'])
domain.upid = user.registrar.id if user.registrar domain.upid = user.registrar.id if user.registrar
domain.up_date = Time.zone.now
domain.update(frame, user, false) domain.update(frame, user, false)
end end
# rubocop:enable Metrics/AbcSize
def clean_pendings!
domain.up_date = Time.zone.now
domain.registrant_verification_token = nil
domain.registrant_verification_asked_at = nil
domain.pending_json = {}
clear_statuses
end
def clear_statuses
domain.statuses.delete(DomainStatus::PENDING_DELETE_CONFIRMATION)
domain.statuses.delete(DomainStatus::PENDING_UPDATE)
domain.statuses.delete(DomainStatus::PENDING_DELETE)
domain.status_notes[DomainStatus::PENDING_UPDATE] = ''
domain.status_notes[DomainStatus::PENDING_DELETE] = ''
end
end end
end end

View file

@ -8,8 +8,8 @@ module DomainUpdateConfirmInteraction
notify_registrar(:poll_pending_update_rejected_by_registrant) notify_registrar(:poll_pending_update_rejected_by_registrant)
domain.preclean_pendings preclean_pendings
domain.clean_pendings! clean_pendings!
end end
end end
end end