internetee-registry/app/models/domain.rb
2014-07-01 14:41:34 +03:00

33 lines
918 B
Ruby

class Domain < ActiveRecord::Base
#TODO whois requests ip whitelist for full info for own domains and partial info for other domains
#TODO most inputs should be trimmed before validatation, probably some global logic?
belongs_to :registrar
belongs_to :ns_set
belongs_to :owner_contact, class_name: 'Contact'
belongs_to :technical_contact, class_name: 'Contact'
belongs_to :admin_contact, class_name: 'Contact'
validates :name, domain_name: true
class << self
def check_availability(domains)
res = []
domains.each do |x|
if !DomainNameValidator.validate(x)
res << {name: x, avail: 0, reason: 'invalid format'}
next
end
if Domain.find_by(name: x)
res << {name: x, avail: 0, reason: 'in use'} #confirm reason with current API
else
res << {name: x, avail: 1}
end
end
res
end
end
end