summaryrefslogtreecommitdiff
path: root/lib/feed2imap/itemtomail.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/feed2imap/itemtomail.rb')
-rw-r--r--lib/feed2imap/itemtomail.rb24
1 files changed, 15 insertions, 9 deletions
diff --git a/lib/feed2imap/itemtomail.rb b/lib/feed2imap/itemtomail.rb
index 6c70cbd..fcf8f8b 100644
--- a/lib/feed2imap/itemtomail.rb
+++ b/lib/feed2imap/itemtomail.rb
@@ -77,14 +77,20 @@ def item_to_mail(config, item, id, updated, from = 'Feed2Imap', inline_images =
message.header['Subject'] = subj
end
end
- textpart = RMail::Message::new
- textpart.header['Content-Type'] = 'text/plain; charset=utf-8; format=flowed'
- textpart.header['Content-Transfer-Encoding'] = '8bit'
- textpart.body = item.to_text(true, wrapto, false)
- htmlpart = RMail::Message::new
- htmlpart.header['Content-Type'] = 'text/html; charset=utf-8'
- htmlpart.header['Content-Transfer-Encoding'] = '8bit'
- htmlpart.body = item.to_html
+ textpart = htmlpart = nil
+ parts = config.parts
+ if parts.include?('text')
+ textpart = parts.size == 1 ? message : RMail::Message::new
+ textpart.header['Content-Type'] = 'text/plain; charset=utf-8; format=flowed'
+ textpart.header['Content-Transfer-Encoding'] = '8bit'
+ textpart.body = item.to_text(true, wrapto, false)
+ end
+ if parts.include?('html')
+ htmlpart = parts.size == 1 ? message : RMail::Message::new
+ htmlpart.header['Content-Type'] = 'text/html; charset=utf-8'
+ htmlpart.header['Content-Transfer-Encoding'] = '8bit'
+ htmlpart.body = item.to_html
+ end
# inline images as attachments
imgs = []
@@ -127,7 +133,7 @@ def item_to_mail(config, item, id, updated, from = 'Feed2Imap', inline_images =
imgs.each do |i|
message.add_part(i)
end
- else
+ elsif parts.size != 1
message.header['Content-Type'] = 'multipart/alternative'
message.add_part(textpart)
message.add_part(htmlpart)