mini-beieli-web/mail.go

72 lines
1.7 KiB
Go

package main
import (
"log"
"net/smtp"
)
func sendEmail(mail_to, mail_default_authuser, mail_message string) {
var auth smtp.Auth
if getenv("MAILSERVER_USER", "") != "" {
// Set up authentication information.
auth = smtp.PlainAuth(
"",
getenv("MAILSERVER_USER", ""),
getenv("MAILSERVER_PASSWORD", ""),
getenv("MAILSERVER_HOST", "127.0.0.1"),
)
}
// Connect to the server, authenticate, set the sender and recipient,
// and send the email all in one step.
err := smtp.SendMail(
getenv("MAILSERVER_HOST", "127.0.0.1")+":"+getenv("MAILSERVER_PORT", "25"),
auth,
getenv("MAILSERVER_USER", mail_default_authuser),
[]string{mail_to, "info@mini-beieli.ch"},
[]byte(mail_message),
)
if err != nil {
log.Fatal(err)
}
}
func sendEmailConfirm(username, confirm_id string) {
mail_message := "To: " + username + `
From: register@mini-beieli.ch
Subject: Passwortaenderung auf https://mini-beieli.ch, bitte bestaetigen
Lieber Benutzer von mini-beieli.ch
Sie haben soeben eine Passwortaenderung veranlasst. Bitte klicken Sie folgenden Link,
um das neue Passwort zu aktivieren:
https://mini-beieli.ch/confirm?id=` + confirm_id + `
Bitte ignorieren Sie diese Meldung, falls die Aenderung nicht von Ihnen angefordert wurde!
Mit freundlichen Grüssen
--
mini-beieli.ch`
sendEmail(username, "mail@mini-beieli.ch", mail_message)
}
func sendPaymentConfirmationEmail(username, charge_data string, amount int64) {
mail_message := "To: " + username + `
From: info@mini-beieli.ch
Subject: Zahlungsbestaetigung mini-beieli.ch
Lieber Benutzer von mini-beieli.ch
Sie haben soeben erfolgreich folgende Abo-Verlaengerungen bezahlt:
` + charge_data + `
Mit freundlichen Grüssen
--
mini-beieli.ch`
sendEmail(username, "mail@mini-beieli.ch", mail_message)
}