From 744ff22f4e4678f6a0006b9a0fdc2d1b08c1fd6f Mon Sep 17 00:00:00 2001 From: Linus Date: Fri, 8 May 2020 11:15:09 +0200 Subject: [PATCH 1/2] added support for attachments for SMTP --- Sources/MailCore/MailCore.swift | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Sources/MailCore/MailCore.swift b/Sources/MailCore/MailCore.swift index c036932..de850e0 100644 --- a/Sources/MailCore/MailCore.swift +++ b/Sources/MailCore/MailCore.swift @@ -31,9 +31,10 @@ public class Mailer: MailerService { public let subject: String public let text: String public let html: String? + public let attachments: [Attachment]? /// Message init - public init(from: String, to: String, cc: [String]? = nil, bcc: [String]? = nil, subject: String, text: String, html: String? = nil) { + public init(from: String, to: String, cc: [String]? = nil, bcc: [String]? = nil, subject: String, text: String, html: String? = nil, attachments: [Attachment]? = nil) { self.from = from self.to = to self.cc = cc @@ -41,6 +42,7 @@ public class Mailer: MailerService { self.subject = subject self.text = text self.html = html + self.attachments = attachments } } From f9a11cb09c05928bf9a2b3c1ca553c8f1cfd5a92 Mon Sep 17 00:00:00 2001 From: Linus Date: Fri, 8 May 2020 11:15:39 +0200 Subject: [PATCH 2/2] added attachments for SMTP --- Sources/MailCore/Extensions/Message+SMTP.swift | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Sources/MailCore/Extensions/Message+SMTP.swift b/Sources/MailCore/Extensions/Message+SMTP.swift index 592cddf..4d8fc72 100644 --- a/Sources/MailCore/Extensions/Message+SMTP.swift +++ b/Sources/MailCore/Extensions/Message+SMTP.swift @@ -20,15 +20,12 @@ extension Mailer.Message { let ccUsers = (cc ?? []).map({ Mail.User(email: $0) }) let bccUsers = (bcc ?? []).map({ Mail.User(email: $0) }) - let attachments: [Attachment] + var attachments: [Attachment] = self.attachments ?? [] if let html = html { - attachments = [Attachment(htmlContent: html)] - } else { - attachments = [] + attachments.append(Attachment(htmlContent: html)) } let mail = Mail(from: fromUser, to: [toUser], cc: ccUsers, bcc: bccUsers, subject: subject, text: text, attachments: attachments) return mail } - }