discourse/lib/validators/allowed_ip_address_validator.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

16 lines
561 B
Ruby
Raw Normal View History

# frozen_string_literal: true
class AllowedIpAddressValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)
if record.ip_address
if ScreenedIpAddress.should_block?(record.ip_address)
2015-06-02 10:05:42 +08:00
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
end