Quellcode durchsuchen

Fixed that text/plain attachments are added to issue description (#15684).

git-svn-id: http://svn.redmine.org/redmine/trunk@12420 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/2.5.0
Jean-Philippe Lang vor 10 Jahren
Ursprung
Commit
d4297ca3ff

+ 5
- 0
app/models/mail_handler.rb Datei anzeigen

@@ -405,6 +405,11 @@ class MailHandler < ActionMailer::Base
else
[email]
end

parts.reject! do |part|
part.header[:content_disposition].try(:disposition_type) == 'attachment'
end

@plain_text_body = parts.map {|p| Redmine::CodesetUtil.to_utf8(p.body.decoded, p.charset)}.join("\r\n")

# strip html tags and remove doctype directive

+ 7
- 0
test/fixtures/mail_handler/multiple_text_parts.eml Datei anzeigen

@@ -52,4 +52,11 @@ Content-Type: text/plain;

The third one.

--Apple-Mail=_33C8180A-B097-4B87-A925-441300BDB9C9
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="textfile.txt"

Plain text attachment

--Apple-Mail=_33C8180A-B097-4B87-A925-441300BDB9C9--

+ 9
- 1
test/unit/mail_handler_test.rb Datei anzeigen

@@ -501,13 +501,21 @@ class MailHandlerTest < ActiveSupport::TestCase
assert_equal 'd8e8fca2dc0f896fd7cb4cb0031ba249', attachment.digest
end

def test_multiple_text_parts
def test_multiple_inline_text_parts_should_be_appended_to_issue_description
issue = submit_email('multiple_text_parts.eml', :issue => {:project => 'ecookbook'})
assert_include 'first', issue.description
assert_include 'second', issue.description
assert_include 'third', issue.description
end

def test_attachment_text_part_should_be_added_as_issue_attachment
issue = submit_email('multiple_text_parts.eml', :issue => {:project => 'ecookbook'})
assert_not_include 'Plain text attachment', issue.description
attachment = issue.attachments.detect {|a| a.filename == 'textfile.txt'}
assert_not_nil attachment
assert_include 'Plain text attachment', File.read(attachment.diskfile)
end

def test_add_issue_with_iso_8859_1_subject
issue = submit_email(
'subject_as_iso-8859-1.eml',

Laden…
Abbrechen
Speichern