mirror of
https://github.com/internetee/registry.git
synced 2025-07-02 01:03:35 +02:00
parent
834b13c922
commit
7530dd7b62
4 changed files with 24 additions and 23 deletions
|
@ -60,16 +60,16 @@ module EppErrors
|
||||||
aggregation.class.epp_code_map.each do |epp_code, attr_to_error|
|
aggregation.class.epp_code_map.each do |epp_code, attr_to_error|
|
||||||
epp_code_found = attr_to_error.any? { |i| i == [attr, error_detail[:error]] }
|
epp_code_found = attr_to_error.any? { |i| i == [attr, error_detail[:error]] }
|
||||||
|
|
||||||
if epp_code_found
|
next unless epp_code_found
|
||||||
message = aggregation.errors.generate_message(attr, error_detail[:error], error_detail)
|
|
||||||
message = aggregation.errors.full_message(attr, message)
|
|
||||||
|
|
||||||
if attr != :base
|
message = aggregation.errors.generate_message(attr, error_detail[:error], error_detail)
|
||||||
message = "#{aggregation.model_name.human} #{message.camelize(:lower)}"
|
message = aggregation.errors.full_message(attr, message)
|
||||||
end
|
|
||||||
|
|
||||||
epp_errors << { code: epp_code, msg: message }
|
if attr != :base
|
||||||
|
message = "#{aggregation.model_name.human} #{message.camelize(:lower)}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
epp_errors << { code: epp_code, msg: message }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -165,8 +165,8 @@ class Epp::Contact < Contact
|
||||||
|
|
||||||
identifier = Ident.new(code: ident,
|
identifier = Ident.new(code: ident,
|
||||||
type: ident_frame.attr('type'),
|
type: ident_frame.attr('type'),
|
||||||
country_code: ident_frame.attr('cc'),
|
country_code: ident_frame.attr('cc')
|
||||||
)
|
)
|
||||||
|
|
||||||
identifier.validate
|
identifier.validate
|
||||||
|
|
||||||
|
|
|
@ -1,19 +1,20 @@
|
||||||
class Contact::Ident::CodeValidator < ActiveModel::EachValidator
|
class Contact::Ident::CodeValidator < ActiveModel::EachValidator
|
||||||
def validate_each(record, attribute, value)
|
def validate_each(record, attribute, value)
|
||||||
if record.country_code == 'EE'
|
return unless record.country_code == 'EE'
|
||||||
if record.national_id?
|
|
||||||
record.errors.add(attribute,
|
|
||||||
:invalid_national_id,
|
|
||||||
country: record.country) unless valid_national_id_ee?(value)
|
|
||||||
end
|
|
||||||
|
|
||||||
if record.reg_no?
|
if record.national_id? && !valid_national_id_ee?(value)
|
||||||
validator = ActiveModel::Validations::FormatValidator.new(with: reg_no_ee_format,
|
record.errors.add(attribute,
|
||||||
attributes: attribute,
|
:invalid_national_id,
|
||||||
message: :invalid_reg_no,
|
country: record.country)
|
||||||
country: record.country)
|
end
|
||||||
validator.validate(record)
|
|
||||||
end
|
if record.reg_no?
|
||||||
|
validator = ActiveModel::Validations::
|
||||||
|
FormatValidator.new(with: reg_no_ee_format,
|
||||||
|
attributes: attribute,
|
||||||
|
message: :invalid_reg_no,
|
||||||
|
country: record.country)
|
||||||
|
validator.validate(record)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
class E164Validator < ActiveModel::EachValidator
|
class E164Validator < ActiveModel::EachValidator
|
||||||
def validate_each(record, attribute, value)
|
def validate_each(record, attribute, _value)
|
||||||
validator = ActiveModel::Validations::LengthValidator.new(maximum: 17, attributes: attribute)
|
validator = ActiveModel::Validations::LengthValidator.new(maximum: 17, attributes: attribute)
|
||||||
validator.validate(record)
|
validator.validate(record)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue