mirror of
https://github.com/internetee/registry.git
synced 2025-08-11 20:19:34 +02:00
Make mass action less complicated
This commit is contained in:
parent
de5b85b115
commit
d80007d83c
1 changed files with 11 additions and 12 deletions
|
@ -1,17 +1,20 @@
|
||||||
class MassAction
|
class MassAction
|
||||||
def self.process(action_type, entries)
|
def self.process(action_type, entries)
|
||||||
entries = CSV.read(entries, headers: true)
|
entries = CSV.read(entries, headers: true)
|
||||||
case action_type
|
return process_force_delete(entries) if action_type == 'force_delete'
|
||||||
when 'force_delete'
|
|
||||||
return false unless force_delete_entries_valid?(entries)
|
|
||||||
|
|
||||||
process_force_delete(entries)
|
false
|
||||||
end
|
|
||||||
rescue StandardError
|
rescue StandardError
|
||||||
false
|
false
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.process_force_delete(entries)
|
def self.process_force_delete(entries)
|
||||||
|
return false unless force_delete_entries_valid?(entries)
|
||||||
|
|
||||||
|
apply_force_deletes(entries)
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.apply_force_deletes(entries)
|
||||||
log = { ok: [], fail: [] }
|
log = { ok: [], fail: [] }
|
||||||
entries.each do |e|
|
entries.each do |e|
|
||||||
dn = Domain.find_by(name_puny: e['domain_name'])
|
dn = Domain.find_by(name_puny: e['domain_name'])
|
||||||
|
@ -25,15 +28,11 @@ class MassAction
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.force_delete_entries_valid?(entries)
|
def self.force_delete_entries_valid?(entries)
|
||||||
valid = true
|
|
||||||
entries.each do |e|
|
entries.each do |e|
|
||||||
unless e['domain_name'].present? && %w[IDENT_BURIED EMAIL PHONE].include?(e['delete_reason'])
|
reasons = %w[IDENT_BURIED EMAIL PHONE]
|
||||||
valid = false
|
return false unless e['domain_name'].present? && reasons.include?(e['delete_reason'])
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
valid
|
true
|
||||||
rescue StandardError
|
|
||||||
false
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue