mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 17:59:47 +02:00
36 lines
860 B
Ruby
36 lines
860 B
Ruby
class DomainVersion < PaperTrail::Version
|
|
include UserEvents
|
|
include DomainVersionObserver if Setting.whois_enabled # unless Setting.whois_enabled
|
|
|
|
scope :deleted, -> { where(event: 'destroy') }
|
|
|
|
self.table_name = :domain_versions
|
|
self.sequence_name = :domain_version_id_seq
|
|
|
|
def load_snapshot
|
|
snapshot ? YAML.load(snapshot) : {}
|
|
end
|
|
|
|
def previous?
|
|
return true if previous
|
|
false
|
|
end
|
|
|
|
def name
|
|
name = reify.try(:name)
|
|
name = load_snapshot[:domain].try(:[], :name) unless name
|
|
name
|
|
end
|
|
|
|
def changed_elements
|
|
return [] unless previous?
|
|
@changes = []
|
|
@previous_snap = previous.load_snapshot
|
|
@snap = load_snapshot
|
|
[:owner_contact, :tech_contacts, :admin_contacts, :nameservers, :domain].each do |key|
|
|
@changes << key unless @snap[key] == @previous_snap[key]
|
|
end
|
|
|
|
@changes
|
|
end
|
|
end
|