|
@@ -1,12 +1,9 @@
|
|
|
package main
|
|
|
|
|
|
import (
|
|
|
- "bytes"
|
|
|
"fmt"
|
|
|
"html"
|
|
|
"io/ioutil"
|
|
|
- "mime/quotedprintable"
|
|
|
- "net/smtp"
|
|
|
"os"
|
|
|
"strings"
|
|
|
"time"
|
|
@@ -18,33 +15,7 @@ import (
|
|
|
)
|
|
|
|
|
|
func smtp_send(host, port, user, pass, subject, msg string, receivers []string) error {
|
|
|
- header := make(map[string]string)
|
|
|
- header["From"] = user
|
|
|
- header["To"] = strings.Join(receivers, ", ")
|
|
|
- header["Subject"] = subject
|
|
|
- header["MIME-Version"] = "1.0"
|
|
|
- header["Content-Type"] = fmt.Sprintf("%s; charset=\"utf-8\"", "text/html")
|
|
|
- header["Content-Transfer-Encoding"] = "quoted-printable"
|
|
|
- header["Content-Disposition"] = "inline"
|
|
|
-
|
|
|
- message := ""
|
|
|
- for key, value := range header {
|
|
|
- message += fmt.Sprintf("%s: %s\r\n", key, value)
|
|
|
- }
|
|
|
-
|
|
|
- var encodedMessage bytes.Buffer
|
|
|
- finalMessage := quotedprintable.NewWriter(&encodedMessage)
|
|
|
- finalMessage.Write([]byte(msg))
|
|
|
- finalMessage.Close()
|
|
|
- message += "\r\n" + encodedMessage.String()
|
|
|
-
|
|
|
- return smtp.SendMail(
|
|
|
- host+":"+port,
|
|
|
- smtp.PlainAuth("", user, pass, host),
|
|
|
- user,
|
|
|
- receivers,
|
|
|
- []byte(message),
|
|
|
- )
|
|
|
+ return utils.SMTPSend(host, port, user, pass, subject, msg, receivers)
|
|
|
}
|
|
|
|
|
|
func smtp_prepare(db *sqlw.DB, conf *config.Config) {
|