FIX: Don't reply to Unsubscribe email sent to mailing list mirror
This commit is contained in:
parent
ded5ff90aa
commit
7a41a783a4
|
@ -838,6 +838,8 @@ module Email
|
||||||
|
|
||||||
def subscription_action_for(body, subject)
|
def subscription_action_for(body, subject)
|
||||||
return unless SiteSetting.unsubscribe_via_email
|
return unless SiteSetting.unsubscribe_via_email
|
||||||
|
return if sent_to_mailinglist_mirror?
|
||||||
|
|
||||||
if ([subject, body].compact.map(&:to_s).map(&:downcase) & ['unsubscribe']).any?
|
if ([subject, body].compact.map(&:to_s).map(&:downcase) & ['unsubscribe']).any?
|
||||||
:confirm_unsubscribe
|
:confirm_unsubscribe
|
||||||
end
|
end
|
||||||
|
|
|
@ -1103,6 +1103,13 @@ describe Email::Receiver do
|
||||||
expect { process(:mailinglist_reply) }.to change { topic.posts.count }
|
expect { process(:mailinglist_reply) }.to change { topic.posts.count }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it "ignores unsubscribe email" do
|
||||||
|
SiteSetting.unsubscribe_via_email = true
|
||||||
|
Fabricate(:user, email: "alice@foo.com")
|
||||||
|
|
||||||
|
expect { process("mailinglist_unsubscribe") }.to_not change { ActionMailer::Base.deliveries.count }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
it "tries to fix unparsable email addresses in To and CC headers" do
|
it "tries to fix unparsable email addresses in To and CC headers" do
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
Return-Path: <discourse@bar.com>
|
||||||
|
From: alice@foo.com
|
||||||
|
To: list@example.com
|
||||||
|
Date: Thu, 13 Jun 2013 17:03:48 -0400
|
||||||
|
Message-ID: <56@foo.bar.mail>
|
||||||
|
Subject: UnSuBScRiBe
|
||||||
|
Mime-Version: 1.0
|
||||||
|
Content-Type: text/plain;
|
||||||
|
Content-Transfer-Encoding: 7bit
|
||||||
|
|
||||||
|
I've basically had enough of your mailing list and would very much like it if you went away.
|
Loading…
Reference in New Issue