summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2012-07-08 12:38:57 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2012-07-08 12:38:57 +0000
commit75e350f4e65701850e43e71b938e83624e847bc9 (patch)
treed7a6b88968173df77e12ec22ff5c08e8349279f1
parent81553d396e4d18fde3c13f56770fc467e0e258b1 (diff)
downloadredmine-75e350f4e65701850e43e71b938e83624e847bc9.tar.gz
redmine-75e350f4e65701850e43e71b938e83624e847bc9.zip
Merged r9924 from trunk.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.4-stable@9960 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--app/models/mail_handler.rb15
-rw-r--r--doc/CHANGELOG1
-rw-r--r--test/unit/mail_handler_test.rb3
3 files changed, 12 insertions, 7 deletions
diff --git a/app/models/mail_handler.rb b/app/models/mail_handler.rb
index e920dbd5f..ef1f9e816 100644
--- a/app/models/mail_handler.rb
+++ b/app/models/mail_handler.rb
@@ -44,8 +44,8 @@ class MailHandler < ActionMailer::Base
cattr_accessor :ignored_emails_headers
@@ignored_emails_headers = {
- 'X-Auto-Response-Suppress' => 'OOF',
- 'Auto-Submitted' => 'auto-replied'
+ 'X-Auto-Response-Suppress' => 'oof',
+ 'Auto-Submitted' => /^auto-/
}
# Processes incoming emails
@@ -63,11 +63,14 @@ class MailHandler < ActionMailer::Base
# Ignore auto generated emails
self.class.ignored_emails_headers.each do |key, ignored_value|
value = email.header_string(key)
- if value && value.to_s.downcase == ignored_value.downcase
- if logger && logger.info
- logger.info "MailHandler: ignoring email with #{key}:#{value} header"
+ if value
+ value = value.to_s.downcase
+ if (ignored_value.is_a?(Regexp) && value.match(ignored_value)) || value == ignored_value
+ if logger && logger.info
+ logger.info "MailHandler: ignoring email with #{key}:#{value} header"
+ end
+ return false
end
- return false
end
end
@user = User.find_by_mail(sender_email) if sender_email.present?
diff --git a/doc/CHANGELOG b/doc/CHANGELOG
index 8e4d303f0..eb606b059 100644
--- a/doc/CHANGELOG
+++ b/doc/CHANGELOG
@@ -8,6 +8,7 @@ http://www.redmine.org/
* Defect #11192: Make repository identifier accept underscores
* Defect #11307: Can't filter for negative numeric custom fields
+* Feature #11338: Exclude emails with auto-submitted => auto-generated
* Patch #11328: Fix Japanese mistranslation for 'label_language_based'
== 2012-06-18 v1.4.4
diff --git a/test/unit/mail_handler_test.rb b/test/unit/mail_handler_test.rb
index 73a93088d..c0593e42b 100644
--- a/test/unit/mail_handler_test.rb
+++ b/test/unit/mail_handler_test.rb
@@ -363,7 +363,8 @@ class MailHandlerTest < ActiveSupport::TestCase
[
"X-Auto-Response-Suppress: OOF",
"Auto-Submitted: auto-replied",
- "Auto-Submitted: Auto-Replied"
+ "Auto-Submitted: Auto-Replied",
+ "Auto-Submitted: auto-generated"
].each do |header|
raw = IO.read(File.join(FIXTURES_PATH, 'ticket_on_given_project.eml'))
raw = header + "\n" + raw