Fix code climate

This commit is contained in:
Thiago Youssef 2022-05-02 15:54:46 +03:00
parent 944aba563c
commit be0ac715b1
2 changed files with 14 additions and 15 deletions

View file

@ -1,32 +1,31 @@
class ValidationEventCheckForceDeleteJob < ApplicationJob
def perform(contact_id)
@contact = Contact.find(contact_id)
@email = @contact.email
email = @contact.email
if @contact.need_to_start_force_delete?
Domains::ForceDeleteEmail::Base.run(email: @email)
Domains::ForceDeleteEmail::Base.run(email: email)
elsif @contact.need_to_lift_force_delete?
refresh_status_notes
domain_list(email).each { |domain| refresh_status_notes(domain) }
end
end
private
def refresh_status_notes
domain_list.each do |domain|
next unless domain.status_notes[DomainStatus::FORCE_DELETE]
def refresh_status_notes(domain)
force_delete_emails = domain.status_notes[DomainStatus::FORCE_DELETE]
return unless force_delete_emails
domain.status_notes[DomainStatus::FORCE_DELETE].slice!(@contact.email_history)
domain.status_notes[DomainStatus::FORCE_DELETE].lstrip!
domain.save(validate: false)
force_delete_emails.slice!(@contact.email_history)
force_delete_emails.lstrip!
domain.save(validate: false)
notify_registrar(domain) unless domain.status_notes[DomainStatus::FORCE_DELETE].empty?
end
notify_registrar(domain) unless force_delete_emails.empty?
end
def domain_list
domain_contacts = Contact.where(email: @email).map(&:domain_contacts).flatten
registrant_ids = Registrant.where(email: @email).pluck(:id)
def domain_list(email)
domain_contacts = Contact.where(email: email).map(&:domain_contacts).flatten
registrant_ids = Registrant.where(email: email).pluck(:id)
(domain_contacts.map(&:domain).flatten + Domain.where(registrant_id: registrant_ids)).uniq
end

View file

@ -1,5 +1,5 @@
desc 'Check Force Delete'
task :check_force_delete, :environment do
task check_force_delete: :environment do
invalid_contacts = Contact.joins(:validation_events).select do |contact|
events = contact.validation_events
events.mx.count >= 3 || events.regex.present?