Skip to content

Commit 3d417c4

Browse files
committed
termine: add ability to announce overrides
1 parent 417a063 commit 3d417c4

File tree

3 files changed

+28
-2
lines changed

3 files changed

+28
-2
lines changed

go.mod

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module github.com/nnev/website
2+
3+
go 1.19
4+
5+
require github.com/lib/pq v1.10.7

go.sum

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
github.com/lib/pq v1.10.7 h1:p7ZhMD+KsSRozJr34udlUrhboJwWAgCg34+/ZZNvZZw=
2+
github.com/lib/pq v1.10.7/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=

termine/announce.go

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ func init() {
4040
}
4141

4242
func announceStammtisch(t *data.Termin) error {
43-
maildraft := `Liebe Treffler,
43+
maildraft := `Lieber Chaostreff,
4444
4545
am kommenden Donnerstag ist wieder Stammtisch. Diesmal sind wir bei {{.Location}}.
4646
@@ -71,7 +71,7 @@ func announceC14(t *data.Termin) error {
7171
log.Fatal("Kann vortrag nicht lesen:", err)
7272
}
7373

74-
maildraft := `Liebe Treffler,
74+
maildraft := `Lieber Chaostreff,
7575
7676
am kommenden Donnerstag wird {{.Speaker}} eine c¼h zum Thema
7777
@@ -96,6 +96,22 @@ Wer mehr Informationen möchte:
9696
return sendAnnouncement(vortrag.Topic, mail)
9797
}
9898

99+
func announceOverride(t *data.Termin) error {
100+
if !t.Date.Valid {
101+
return errors.New("Termin hat kein Datum")
102+
}
103+
if t.Override == "" {
104+
return errors.New("Termin hat keinen override")
105+
}
106+
d := t.Date.Time.Format("2006-01-02")
107+
subj := fmt.Sprintf("Treff %s: %s", d, t.Override)
108+
msg := "Lieber Chaostreff,\n\n" + t.OverrideLong
109+
if t.OverrideLong == "" {
110+
msg = "[kein text, siehe Betreff]"
111+
}
112+
return sendAnnouncement(subj, []byte(msg))
113+
}
114+
99115
func sendAnnouncement(subject string, msg []byte) error {
100116
mail := new(bytes.Buffer)
101117
fmt.Fprintf(mail, "From: [email protected]\r\n")
@@ -158,5 +174,8 @@ func RunAnnounce() error {
158174
if t.Stammtisch.Bool {
159175
return announceStammtisch(t)
160176
}
177+
if t.Override != "" {
178+
return announceOverride(t)
179+
}
161180
return announceC14(t)
162181
}

0 commit comments

Comments
 (0)