Class: AllowedIpAddressValidator

Inherits:
ActiveModel::EachValidator
  • Object
show all
Defined in:
lib/validators/allowed_ip_address_validator.rb

Instance Method Summary collapse

Instance Method Details

#validate_each(record, attribute, value) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/validators/allowed_ip_address_validator.rb', line 4

def validate_each(record, attribute, value)
  if record.ip_address
    if ScreenedIpAddress.should_block?(record.ip_address)
      record.errors.add(attribute, I18n.t("user.ip_address.blocked"))
    end
    if record.trust_level == TrustLevel[0] &&
         SpamHandler.should_prevent_registration_from_ip?(record.ip_address)
      record.errors.add(attribute, I18n.t("user.ip_address.max_new_accounts_per_registration_ip"))
    end
  end
end