FIX: don't allow spaces in 'reply_by_email_address' site setting
This commit is contained in:
parent
ad4c25e004
commit
2585ada5ca
|
@ -4,14 +4,19 @@ class ReplyByEmailAddressValidator
|
||||||
end
|
end
|
||||||
|
|
||||||
def valid_value?(val)
|
def valid_value?(val)
|
||||||
|
val&.strip!
|
||||||
|
|
||||||
return true if val.blank?
|
return true if val.blank?
|
||||||
return false if val["@"].nil?
|
return false if !val.include?("@")
|
||||||
|
|
||||||
|
value = val.dup
|
||||||
|
|
||||||
if SiteSetting.find_related_post_with_key
|
if SiteSetting.find_related_post_with_key
|
||||||
!!val["%{reply_key}"] && val.sub(/\+?%{reply_key}/, "") != SiteSetting.notification_email
|
return false if !value.include?("%{reply_key}")
|
||||||
else
|
value.sub!(/\+?%{reply_key}/, "")
|
||||||
val != SiteSetting.notification_email
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
value != SiteSetting.notification_email && !value.include?(" ")
|
||||||
end
|
end
|
||||||
|
|
||||||
def error_message
|
def error_message
|
||||||
|
|
|
@ -12,6 +12,7 @@ describe ReplyByEmailAddressValidator do
|
||||||
|
|
||||||
it "returns false if value is not an email address" do
|
it "returns false if value is not an email address" do
|
||||||
expect(validator.valid_value?('WAT%{reply_key}.com')).to eq(false)
|
expect(validator.valid_value?('WAT%{reply_key}.com')).to eq(false)
|
||||||
|
expect(validator.valid_value?('word +%{reply_key}@example.com')).to eq(false)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "returns false if value does not contain '%{reply_key}'" do
|
it "returns false if value does not contain '%{reply_key}'" do
|
||||||
|
|
Loading…
Reference in New Issue