|
4 | 4 | "bytes" |
5 | 5 | "crypto/tls" |
6 | 6 | "html/template" |
7 | | - "mime/quotedprintable" |
8 | 7 | "net/mail" |
9 | 8 | "net/smtp" |
10 | 9 |
|
@@ -67,22 +66,21 @@ func (m *Message) writeBoundary() { |
67 | 66 | func (m *Message) writeText(content string, contentType string) { |
68 | 67 | m.writeBoundary() |
69 | 68 | m.writeHeader("Content-Type", contentType+"; charset=UTF-8") |
70 | | - m.writeHeader("Content-Transfer-Encoding", "quoted-printable") |
71 | 69 | m.buffer.WriteString("\r\n") |
72 | | - qp := quotedprintable.NewWriter(m.buffer) |
73 | | - defer qp.Close() |
74 | | - qp.Write([]byte(content)) |
| 70 | + m.buffer.WriteString(content) |
| 71 | + m.buffer.WriteString("\r\n") |
75 | 72 | m.buffer.WriteString("\r\n") |
76 | 73 | } |
77 | 74 |
|
78 | 75 | func (m *Message) writeFile(f *File, disposition string) { |
79 | 76 | m.writeBoundary() |
80 | | - m.writeHeader("Content-Type", f.Type+"; name="+f.Name) |
81 | | - m.writeHeader("Content-Disposition", disposition+"; filename="+f.Name) |
| 77 | + m.writeHeader("Content-Type", f.Type+`; name="`+f.Name+`"`) |
| 78 | + m.writeHeader("Content-Disposition", disposition+`; filename="`+f.Name+`"`) |
82 | 79 | m.writeHeader("Content-Transfer-Encoding", "base64") |
83 | 80 | m.buffer.WriteString("\r\n") |
84 | 81 | m.buffer.WriteString(f.Content) |
85 | 82 | m.buffer.WriteString("\r\n") |
| 83 | + m.buffer.WriteString("\r\n") |
86 | 84 | } |
87 | 85 |
|
88 | 86 | func (e *Email) Send(m *Message) (err error) { |
@@ -117,14 +115,14 @@ func (e *Email) Send(m *Message) (err error) { |
117 | 115 | // TODO: |
118 | 116 | } |
119 | 117 |
|
120 | | - // Attachments / inlines |
| 118 | + // Inlines/attachments |
121 | 119 | for _, f := range m.Inlines { |
122 | 120 | m.writeFile(f, "inline") |
123 | 121 | } |
124 | 122 | for _, f := range m.Attachments { |
125 | | - m.writeFile(f, "disposition") |
| 123 | + m.writeFile(f, "attachment") |
126 | 124 | } |
127 | | - m.buffer.WriteString("\r\n\r\n--") |
| 125 | + m.buffer.WriteString("--") |
128 | 126 | m.buffer.WriteString(m.boundary) |
129 | 127 | m.buffer.WriteString("--") |
130 | 128 |
|
|
0 commit comments