mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 09:26:54 -06:00
a312b9ae88
Since we already have perfectly sensible logic for validating email addresses, let's leverage that and simplify the logic while we're at it. Emails with spaces are no longer permitted (why were they?)
24 lines
568 B
Ruby
24 lines
568 B
Ruby
# frozen_string_literal: true
|
|
|
|
class ReplyByEmailAddressValidator
|
|
def initialize(opts = {})
|
|
@opts = opts
|
|
end
|
|
|
|
def valid_value?(val)
|
|
return true if val.blank?
|
|
return false if !EmailAddressValidator.valid_value?(val)
|
|
|
|
if SiteSetting.find_related_post_with_key
|
|
return false if !val.include?("%{reply_key}")
|
|
val.sub(/\+?%{reply_key}/, "") != SiteSetting.notification_email
|
|
else
|
|
val != SiteSetting.notification_email
|
|
end
|
|
end
|
|
|
|
def error_message
|
|
I18n.t('site_settings.errors.invalid_reply_by_email_address')
|
|
end
|
|
end
|