mirror of
https://github.com/internetee/registry.git
synced 2025-06-08 21:54:48 +02:00
25 lines
No EOL
677 B
Ruby
25 lines
No EOL
677 B
Ruby
module Concerns::Domain::Deletable
|
|
extend ActiveSupport::Concern
|
|
|
|
private
|
|
|
|
def delete_later
|
|
deletion_time = Time.zone.at(rand(deletion_time_span))
|
|
DomainDeleteJob.enqueue(id, run_at: deletion_time, priority: 1)
|
|
logger.info "Domain #{name} is scheduled to be deleted around #{deletion_time}"
|
|
end
|
|
|
|
def do_not_delete_later
|
|
# Que job can be manually deleted in admin area UI
|
|
QueJob.find_by("args->>0 = '#{id}'", job_class: DomainDeleteJob.name)&.destroy
|
|
end
|
|
|
|
def deletion_time_span
|
|
range_params = [Time.zone.now.to_i, deletion_deadline.to_i].sort
|
|
Range.new(*range_params)
|
|
end
|
|
|
|
def deletion_deadline
|
|
delete_date + 24.hours
|
|
end
|
|
end |