class DomainValidator::DomainValidator
Constants
- RE_DOMAIN
Public Instance Methods
has_dns_record?(domain)
click to toggle source
# File lib/domain_validator/validator.rb, line 29 def has_dns_record?(domain) options[:verify_dns] ? DnsCheck.has_record?(domain) : true end
is_valid_domain?(domain)
click to toggle source
# File lib/domain_validator/validator.rb, line 25 def is_valid_domain?(domain) domain =~ RE_DOMAIN end
validate_domain_dns(record, attr_name, value)
click to toggle source
# File lib/domain_validator/validator.rb, line 20 def validate_domain_dns(record, attr_name, value) valid_domain = has_dns_record?(value) record.errors.add(attr_name, verify_dns_message || "does not have a DNS record") unless valid_domain end
validate_domain_format(record, attr_name, value)
click to toggle source
# File lib/domain_validator/validator.rb, line 15 def validate_domain_format(record, attr_name, value) valid_domain = is_valid_domain?(value) record.errors.add(attr_name, options[:message] || "is invalid") unless valid_domain end
validate_each(record, attr_name, value)
click to toggle source
# File lib/domain_validator/validator.rb, line 9 def validate_each(record, attr_name, value) validate_domain_format(record, attr_name, value) # Only waste time with DNS check if record is invalid? validate_domain_dns(record, attr_name, value) if record.errors.empty? && options[:verify_dns] end
verify_dns_message()
click to toggle source
# File lib/domain_validator/validator.rb, line 33 def verify_dns_message verify_dns = options[:verify_dns] if verify_dns.is_a? Hash verify_dns[:message] || options[:message] end end