aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2012-11-15 16:39:46 +0000
committerLouise Crow <louise.crow@gmail.com>2012-11-15 16:39:46 +0000
commitdaf42a44bf019128374f3cc636d95b8308a01f2e (patch)
treeba910a3f46ee3b29e9d5470a499872d96d3bd39f
parent9ef3f43fca535ffb52d2420bcfd8f18e5213b943 (diff)
Move _get_file_part_name to mail handler.
-rw-r--r--app/models/incoming_message.rb16
-rw-r--r--lib/mail_handler/backends/mail_backend.rb7
-rw-r--r--lib/mail_handler/backends/tmail_backend.rb10
3 files changed, 20 insertions, 13 deletions
diff --git a/app/models/incoming_message.rb b/app/models/incoming_message.rb
index e933343cc..96d439b0b 100644
--- a/app/models/incoming_message.rb
+++ b/app/models/incoming_message.rb
@@ -207,7 +207,7 @@ class IncomingMessage < ActiveRecord::Base
_count_parts_recursive(p)
end
else
- part_filename = TMail::Mail.get_part_file_name(part)
+ part_filename = MailHandler.get_part_file_name(part)
begin
if part.content_type == 'message/rfc822'
# An email attached as text
@@ -458,16 +458,6 @@ class IncomingMessage < ActiveRecord::Base
return text
end
- # Internal function
- def _get_part_file_name(mail)
- part_file_name = TMail::Mail.get_part_file_name(mail)
- if part_file_name.nil?
- return nil
- end
- part_file_name = part_file_name.dup
- return part_file_name
- end
-
# (This risks losing info if the unchosen alternative is the only one to contain
# useful info, but let's worry about that another time)
def get_attachment_leaves
@@ -519,7 +509,7 @@ class IncomingMessage < ActiveRecord::Base
end
# PDFs often come with this mime type, fix it up for view code
if curr_mail.content_type == 'application/octet-stream'
- part_file_name = self._get_part_file_name(curr_mail)
+ part_file_name = MailHandler.get_part_file_name(curr_mail)
calc_mime = AlaveteliFileTypes.filename_and_content_to_mimetype(part_file_name, curr_mail.body)
if calc_mime
curr_mail.content_type = calc_mime
@@ -799,7 +789,7 @@ class IncomingMessage < ActiveRecord::Base
attachment = self.foi_attachments.find_or_create_by_hexdigest(:hexdigest => hexdigest)
attachment.update_attributes(:url_part_number => leaf.url_part_number,
:content_type => leaf.content_type,
- :filename => _get_part_file_name(leaf),
+ :filename => MailHandler.get_part_file_name(leaf),
:charset => leaf.charset,
:within_rfc822_subject => within_rfc822_subject,
:body => body)
diff --git a/lib/mail_handler/backends/mail_backend.rb b/lib/mail_handler/backends/mail_backend.rb
index a6f2a6a44..fd2fa627f 100644
--- a/lib/mail_handler/backends/mail_backend.rb
+++ b/lib/mail_handler/backends/mail_backend.rb
@@ -22,6 +22,13 @@ module MailHandler
main.ready_to_send!
main
end
+
+ # Return a copy of the file name for the mail part
+ def get_part_file_name(mail_part)
+ part_file_name = mail_part.filename
+ part_file_name.nil? ? nil : part_file_name.dup
+ end
+
end
end
end \ No newline at end of file
diff --git a/lib/mail_handler/backends/tmail_backend.rb b/lib/mail_handler/backends/tmail_backend.rb
index 4daa5469f..0fa90a657 100644
--- a/lib/mail_handler/backends/tmail_backend.rb
+++ b/lib/mail_handler/backends/tmail_backend.rb
@@ -31,6 +31,16 @@ module MailHandler
main
end
+ # Return a copy of the file name for the mail part
+ def get_part_file_name(mail_part)
+ part_file_name = TMail::Mail.get_part_file_name(mail_part)
+ if part_file_name.nil?
+ return nil
+ end
+ part_file_name = part_file_name.dup
+ return part_file_name
+ end
+
end
end
end \ No newline at end of file