mirror of
https://github.com/tavo-wasd-gh/conex-builder.git
synced 2025-06-06 11:43:29 -06:00
39 lines
825 B
Go
39 lines
825 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"math/rand"
|
|
"os"
|
|
"strconv"
|
|
"time"
|
|
|
|
"gopkg.in/gomail.v2"
|
|
)
|
|
|
|
func GenerateCode() string {
|
|
rand.Seed(time.Now().UnixNano())
|
|
return fmt.Sprintf("%06d", rand.Intn(1000000))
|
|
}
|
|
|
|
func SendAuthEmail(recipient string, code string) error {
|
|
smtpHost := os.Getenv("EMAIL_HOST")
|
|
smtpPortStr := os.Getenv("EMAIL_PORT")
|
|
smtpUser := os.Getenv("EMAIL_USER")
|
|
smtpPass := os.Getenv("EMAIL_PASS")
|
|
smtpPort, _ := strconv.Atoi(smtpPortStr)
|
|
subject := os.Getenv("EMAIL_SUBJECT")
|
|
body := os.Getenv("EMAIL_BODY")
|
|
|
|
m := gomail.NewMessage()
|
|
m.SetHeader("From", smtpUser)
|
|
m.SetHeader("To", recipient)
|
|
m.SetHeader("Subject", subject)
|
|
m.SetBody("text/plain", body+code)
|
|
|
|
d := gomail.NewDialer(smtpHost, smtpPort, smtpUser, smtpPass)
|
|
if err := d.DialAndSend(m); err != nil {
|
|
return err
|
|
}
|
|
|
|
return nil
|
|
}
|