31 lines
681 B
Go
31 lines
681 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"github.com/Masterminds/sprig"
|
||
|
"os"
|
||
|
"text/template"
|
||
|
)
|
||
|
|
||
|
func WithdrawMotion(decision *Decision, voter *Voter) (err error) {
|
||
|
// load template, fill name, tag, title, content
|
||
|
type mailContext struct {
|
||
|
*Decision
|
||
|
Name string
|
||
|
Sender string
|
||
|
Recipient string
|
||
|
}
|
||
|
context := mailContext{decision, voter.Name, config.NoticeSenderAddress, config.BoardMailAddress}
|
||
|
|
||
|
// fill withdraw_mail.txt
|
||
|
t, err := template.New("withdraw_mail.txt").Funcs(
|
||
|
sprig.GenericFuncMap()).ParseFiles("templates/withdraw_mail.txt")
|
||
|
if err != nil {
|
||
|
logger.Fatal(err)
|
||
|
}
|
||
|
// TODO: send mail
|
||
|
t.Execute(os.Stdout, context)
|
||
|
|
||
|
// TODO: implement call decision.Close()
|
||
|
return
|
||
|
}
|