diff --git a/app/models/concerns/contact/archivable.rb b/app/models/concerns/contact/archivable.rb index 656e86a6a..6e4edb958 100644 --- a/app/models/concerns/contact/archivable.rb +++ b/app/models/concerns/contact/archivable.rb @@ -17,8 +17,10 @@ module Concerns inactive end - def archive - raise 'Contact cannot be archived' unless archivable?(post: true) + def archive(verified: false) + unless verified + raise 'Contact cannot be archived' unless archivable?(post: true) + end destroy! end diff --git a/app/models/inactive_contacts.rb b/app/models/inactive_contacts.rb index 948b1f0bf..0899a751f 100644 --- a/app/models/inactive_contacts.rb +++ b/app/models/inactive_contacts.rb @@ -5,11 +5,11 @@ class InactiveContacts @contacts = contacts end - def archive + def archive(verified: false) contacts.each do |contact| log("Archiving contact: id(#{contact.id}), code(#{contact.code})") - contact.archive + contact.archive(verified: verified) yield contact if block_given? end end diff --git a/lib/tasks/contacts/archive.rake b/lib/tasks/contacts/archive.rake index 6ed29969f..6eb23b0b7 100644 --- a/lib/tasks/contacts/archive.rake +++ b/lib/tasks/contacts/archive.rake @@ -4,7 +4,7 @@ namespace :contacts do task archive: :environment do puts 'Starting to gather archivable contacts' inactive_contacts = InactiveContacts.new - archived_contacts = inactive_contacts.archive + archived_contacts = inactive_contacts.archive(verified: true) puts "Archived total: #{archived_contacts.count}" end