From 8fb3d511c27791cb9f8c343817fb7820013a9d18 Mon Sep 17 00:00:00 2001 From: Maciej Szlosarczyk Date: Tue, 26 Jun 2018 11:37:31 +0300 Subject: [PATCH] Remove clean_pendings_lowlevel method --- app/jobs/domain_update_confirm_job.rb | 4 +++- app/models/domain.rb | 30 --------------------------- app/models/domain_cron.rb | 5 ++++- 3 files changed, 7 insertions(+), 32 deletions(-) diff --git a/app/jobs/domain_update_confirm_job.rb b/app/jobs/domain_update_confirm_job.rb index b4d2a9f57..c661c7b6b 100644 --- a/app/jobs/domain_update_confirm_job.rb +++ b/app/jobs/domain_update_confirm_job.rb @@ -23,7 +23,9 @@ class DomainUpdateConfirmJob < Que::Job registrant: domain.registrant).deliver_now domain.poll_message!(:poll_pending_update_rejected_by_registrant) - domain.clean_pendings_lowlevel + + domain.preclean_pendings + domain.clean_pendings! end destroy # it's best to destroy the job in the same transaction end diff --git a/app/models/domain.rb b/app/models/domain.rb index 0f3afed90..30ed0b580 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -294,36 +294,6 @@ class Domain < ActiveRecord::Base save end - - # state changes may be done low-level - no validation - # in this metod we still save PaperTrail log. - def clean_pendings_lowlevel - statuses.delete(DomainStatus::PENDING_DELETE_CONFIRMATION) - statuses.delete(DomainStatus::PENDING_UPDATE) - statuses.delete(DomainStatus::PENDING_DELETE) - - status_notes[DomainStatus::PENDING_UPDATE] = '' - status_notes[DomainStatus::PENDING_DELETE] = '' - - hash = { - registrant_verification_token: nil, - registrant_verification_asked_at: nil, - pending_json: {}, - status_notes: status_notes, - statuses: statuses.presence || [DomainStatus::OK], - # need this column in order to update PaperTrail version properly - updated_at: Time.now.utc - } - - # PaperTrail - self.attributes = hash - record_update - clear_version_instance! - reset_transaction_id - - update_columns(hash) - end - def pending_update! return true if pending_update? self.epp_pending_update = true # for epp diff --git a/app/models/domain_cron.rb b/app/models/domain_cron.rb index 80bf32c5a..8de52b226 100644 --- a/app/models/domain_cron.rb +++ b/app/models/domain_cron.rb @@ -21,7 +21,10 @@ class DomainCron if domain.pending_delete? || domain.pending_delete_confirmation? DomainMailer.pending_delete_expired_notification(domain.id, true).deliver end - domain.clean_pendings_lowlevel + + domain.preclean_pendings + domain.clean_pendings! + unless Rails.env.test? STDOUT << "#{Time.zone.now.utc} DomainCron.clean_expired_pendings: ##{domain.id} (#{domain.name})\n" end