internetee-registry/app/models/domain_contact.rb
Andres Keskküla f5e7f23ddf Fixed tests
2014-10-22 12:36:32 +03:00

47 lines
917 B
Ruby

class DomainContact < ActiveRecord::Base
include EppErrors
belongs_to :contact
belongs_to :domain
after_create :domain_snapshot
after_destroy :domain_snapshot
# after_save :domain_snapshot
attr_accessor :value_typeahead
def epp_code_map
{
'2302' => [
[:contact, :taken, { value: { obj: 'contact', val: contact.code } }]
]
}
end
TECH = 'tech'
ADMIN = 'admin'
TYPES = [TECH, ADMIN]
validates :contact, presence: true
scope :admin, -> { where(contact_type: ADMIN) }
scope :tech, -> { where(contact_type: TECH) }
def admin?
contact_type == ADMIN
end
def tech?
contact_type == TECH
end
def value_typeahead
@value_typeahead || contact.try(:name) || nil
end
def domain_snapshot
return true if domain.nil?
return true if domain.versions.count == 0 # avoid snapshot on creation
domain.create_version
true
end
end