discourse/lib/validators/reply_by_email_address_validator.rb

26 lines
540 B
Ruby

class ReplyByEmailAddressValidator
def initialize(opts = {})
@opts = opts
end
def valid_value?(val)
val&.strip!
return true if val.blank?
return false if !val.include?("@")
value = val.dup
if SiteSetting.find_related_post_with_key
return false if !value.include?("%{reply_key}")
value.sub!(/\+?%{reply_key}/, "")
end
value != SiteSetting.notification_email && !value.include?(" ")
end
def error_message
I18n.t('site_settings.errors.invalid_reply_by_email_address')
end
end