35 lines
642 B
Go
35 lines
642 B
Go
package utils
|
|
|
|
import (
|
|
"github.com/Caknoooo/go-gin-clean-starter/config"
|
|
|
|
"gopkg.in/gomail.v2"
|
|
)
|
|
|
|
func SendMail(toEmail string, subject string, body string) error {
|
|
emailConfig, err := config.NewEmailConfig()
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
mailer := gomail.NewMessage()
|
|
mailer.SetHeader("From", emailConfig.AuthEmail)
|
|
mailer.SetHeader("To", toEmail)
|
|
mailer.SetHeader("Subject", subject)
|
|
mailer.SetBody("text/html", body)
|
|
|
|
dialer := gomail.NewDialer(
|
|
emailConfig.Host,
|
|
emailConfig.Port,
|
|
emailConfig.AuthEmail,
|
|
emailConfig.AuthPassword,
|
|
)
|
|
|
|
err = dialer.DialAndSend(mailer)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|