mirror of
https://github.com/internetee/registry.git
synced 2025-05-18 02:09:39 +02:00
Story#111503520 - couldn't apply pending update as registrar wasn't valid
This commit is contained in:
parent
438b22f19d
commit
b28748d667
2 changed files with 8 additions and 12 deletions
|
@ -3,19 +3,16 @@ class DomainUpdateConfirmJob < Que::Job
|
||||||
# it's recommended to keep transaction against job table as short as possible.
|
# it's recommended to keep transaction against job table as short as possible.
|
||||||
ActiveRecord::Base.transaction do
|
ActiveRecord::Base.transaction do
|
||||||
domain = Epp::Domain.find(domain_id)
|
domain = Epp::Domain.find(domain_id)
|
||||||
|
domain.is_admin = true
|
||||||
case action
|
case action
|
||||||
when RegistrantVerification::CONFIRMED
|
when RegistrantVerification::CONFIRMED
|
||||||
domain.poll_message!(:poll_pending_update_confirmed_by_registrant)
|
domain.poll_message!(:poll_pending_update_confirmed_by_registrant)
|
||||||
domain.apply_pending_update! do |e|
|
domain.apply_pending_update!
|
||||||
e.instance_variable_set("@changed_attributes", e.changed_attributes.merge("statuses"=>[]))
|
|
||||||
end
|
|
||||||
domain.clean_pendings!
|
domain.clean_pendings!
|
||||||
WhoisRecord.find_by(domain_id: domain.id).save
|
|
||||||
when RegistrantVerification::REJECTED
|
when RegistrantVerification::REJECTED
|
||||||
domain.send_mail :pending_update_rejected_notification_for_new_registrant
|
domain.send_mail :pending_update_rejected_notification_for_new_registrant
|
||||||
domain.poll_message!(:poll_pending_update_rejected_by_registrant)
|
domain.poll_message!(:poll_pending_update_rejected_by_registrant)
|
||||||
domain.clean_pendings!
|
domain.clean_pendings!
|
||||||
domain.instance_variable_set("@changed_attributes", domain.changed_attributes.merge("statuses"=>[]))
|
|
||||||
domain.save
|
domain.save
|
||||||
end
|
end
|
||||||
destroy # it's best to destroy the job in the same transaction
|
destroy # it's best to destroy the job in the same transaction
|
||||||
|
|
|
@ -507,18 +507,17 @@ class Epp::Domain < Domain
|
||||||
frame = Nokogiri::XML(pending_json['frame'])
|
frame = Nokogiri::XML(pending_json['frame'])
|
||||||
|
|
||||||
self.deliver_emails = true # turn on email delivery
|
self.deliver_emails = true # turn on email delivery
|
||||||
send_mail :registrant_updated_notification_for_old_registrant
|
self.statuses.delete(DomainStatus::PENDING_UPDATE)
|
||||||
|
|
||||||
statuses.delete(DomainStatus::PENDING_UPDATE)
|
|
||||||
yield(self) if block_given? # need to skip statuses check here
|
|
||||||
self.save
|
|
||||||
|
|
||||||
::PaperTrail.whodunnit = user.id_role_username # updator str should be the request originator not the approval user
|
::PaperTrail.whodunnit = user.id_role_username # updator str should be the request originator not the approval user
|
||||||
|
|
||||||
|
send_mail :registrant_updated_notification_for_old_registrant
|
||||||
return unless update(frame, user, false)
|
return unless update(frame, user, false)
|
||||||
clean_pendings!
|
clean_pendings!
|
||||||
|
|
||||||
send_mail :registrant_updated_notification_for_new_registrant
|
send_mail :registrant_updated_notification_for_new_registrant
|
||||||
update_whois_record
|
WhoisRecord.find_by(domain_id: id).save # need to reload model
|
||||||
|
|
||||||
|
save! # for notification if everything fails
|
||||||
true
|
true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue