mirror of
https://github.com/internetee/registry.git
synced 2025-07-30 22:46:22 +02:00
Merge pull request #2755 from internetee/upgrade-registrar-invalid-company-notification
Refactor force delete notifications and improve status handling
This commit is contained in:
commit
5b1a5a6d06
5 changed files with 26 additions and 12 deletions
|
@ -5,9 +5,19 @@ module Domains
|
|||
email.present? ? notify_with_email : notify_without_email
|
||||
end
|
||||
|
||||
def force_delete_type
|
||||
type == :soft ? 'Soft' : 'Fast Track'
|
||||
end
|
||||
|
||||
def force_delete_start_date
|
||||
domain.force_delete_start.strftime('%d.%m.%Y')
|
||||
end
|
||||
|
||||
def notify_without_email
|
||||
template = if reason == 'invalid_company'
|
||||
I18n.t('invalid_ident',
|
||||
force_delete_type: force_delete_type,
|
||||
force_delete_start_date: force_delete_start_date,
|
||||
ident: domain.registrant.ident,
|
||||
domain_name: domain.name,
|
||||
outzone_date: domain.outzone_date,
|
||||
|
@ -28,6 +38,8 @@ module Domains
|
|||
def notify_with_email
|
||||
template = if reason == 'invalid_company'
|
||||
I18n.t('invalid_ident',
|
||||
force_delete_type: force_delete_type,
|
||||
force_delete_start_date: force_delete_start_date,
|
||||
ident: domain.registrant.ident,
|
||||
domain_name: domain.name,
|
||||
outzone_date: domain.outzone_date,
|
||||
|
|
|
@ -75,18 +75,12 @@ class CompanyRegisterStatusJob < ApplicationJob
|
|||
contact.registrant_domains.each do |domain|
|
||||
next if domain.force_delete_scheduled?
|
||||
|
||||
company_status = if company_status.nil?
|
||||
'Contact not found in EE business registry'
|
||||
else
|
||||
"Contact has status #{REGISTRY_STATUSES[company_status]}"
|
||||
end
|
||||
|
||||
domain.schedule_force_delete(
|
||||
type: :fast_track,
|
||||
notify_by_email: true,
|
||||
reason: 'invalid_company',
|
||||
email: contact.email,
|
||||
notes: company_status
|
||||
notes: company_status_notes(company_status)
|
||||
)
|
||||
end
|
||||
end
|
||||
|
@ -142,15 +136,13 @@ class CompanyRegisterStatusJob < ApplicationJob
|
|||
def soft_delete_company(contact, company_status)
|
||||
contact.registrant_domains.reject { |domain| domain.force_delete_scheduled? }.each do |domain|
|
||||
next if domain.force_delete_scheduled?
|
||||
|
||||
company_status = company_status.nil? ? 'No information' : REGISTRY_STATUSES[company_status]
|
||||
|
||||
domain.schedule_force_delete(
|
||||
type: :soft,
|
||||
notify_by_email: true,
|
||||
reason: 'invalid_company',
|
||||
email: contact.email,
|
||||
notes: "Contact has status #{company_status}")
|
||||
notes: company_status_notes(company_status))
|
||||
end
|
||||
|
||||
puts "Soft delete process initiated for company: #{contact.name} with ID: #{contact.id}"
|
||||
|
@ -168,4 +160,12 @@ class CompanyRegisterStatusJob < ApplicationJob
|
|||
def whitelisted_company?(contact)
|
||||
whitelisted_companies.include?(contact.ident)
|
||||
end
|
||||
|
||||
def company_status_notes(company_status)
|
||||
if company_status.nil?
|
||||
'Contact not found in EE business registry'
|
||||
else
|
||||
"Contact has status #{REGISTRY_STATUSES.fetch(company_status, company_status)}"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -676,7 +676,7 @@ en:
|
|||
actions: Actions
|
||||
contact_has_been_archived: 'Contact with code %{contact_code} has been archieved because it has been orphaned for longer than %{orphan_months} months.'
|
||||
dns_policy_violation: "Data management policy violation: DNSKEY does not match or not found in the authoritative nameservers"
|
||||
invalid_ident: 'Force delete set on domain %{domain_name}. Outzone date: %{outzone_date}. Purge date: %{purge_date}. Invalid ident %{ident}. %{notes}'
|
||||
invalid_ident: 'Force delete set on domain %{domain_name}. Force Delete Type: %{force_delete_type}. Force Delete Start Date: %{force_delete_start_date}. Outzone date: %{outzone_date}. Purge date: %{purge_date}. Invalid ident %{ident}. %{notes}'
|
||||
|
||||
number:
|
||||
currency:
|
||||
|
|
|
@ -41,4 +41,4 @@ et:
|
|||
ipv6:
|
||||
taken: 'on juba lisatud'
|
||||
|
||||
invalid_ident: 'Jõustatud kustutamine määratud domainile %{domain_name}. Väljaandmise kuupäev: %{outzone_date}. Kustutamise kuupäev: %{purge_date}. Vigane ident %{ident}'
|
||||
invalid_ident: 'Jõustatud kustutamine määratud domainile %{domain_name}. Jõustatud kustutamine tüüp: %{force_delete_type}. Jõustatud kustutamise algus kuupäev: %{force_delete_start_date}. Väljaandmise kuupäev: %{outzone_date}. Kustutamise kuupäev: %{purge_date}. Vigane ident %{ident}'
|
||||
|
|
|
@ -185,6 +185,8 @@ class CompanyRegisterStatusJobTest < ActiveSupport::TestCase
|
|||
domain_name: @registrant_acme.registrant_domains.first.name,
|
||||
outzone_date: @registrant_acme.registrant_domains.first.outzone_date,
|
||||
purge_date: @registrant_acme.registrant_domains.first.purge_date,
|
||||
force_delete_type: 'Fast Track',
|
||||
force_delete_start_date: @registrant_acme.registrant_domains.first.force_delete_start.strftime('%d.%m.%Y'),
|
||||
notes: "Contact has status deleted")
|
||||
assert_equal @registrant_acme.registrant_domains.first.registrar.notifications.last.text, template
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue