Make support mail contact configurable

Still fails because the config is not available in the base template.
This commit is contained in:
Gonne 2024-01-16 10:27:44 +01:00
parent d72914da0d
commit 83bc490740
7 changed files with 21 additions and 6 deletions

View file

@ -46,6 +46,7 @@ type Config struct {
SmtpUseAuth bool // Set whether to use authentication on the smarthosthost SmtpUseAuth bool // Set whether to use authentication on the smarthosthost
SmtpIdentity string // Smarthost username SmtpIdentity string // Smarthost username
SmtpPassword string // Smarthost password SmtpPassword string // Smarthost password
SupportMail string // separate mail address for support contact
} }
SQL struct { SQL struct {
Type string // Can be "SQLite" or "Mysql" Type string // Can be "SQLite" or "Mysql"
@ -143,6 +144,15 @@ func validateConfig(conf *Config) error {
err = fmt.Errorf("Validating config: Mail FromName could not be parsed (%w)", mailFromNameErr) err = fmt.Errorf("Validating config: Mail FromName could not be parsed (%w)", mailFromNameErr)
log.Println(err) log.Println(err)
} }
supportMail, mailSupportMailErr := mail.ParseAddress(string(conf.Mailer.SupportMail))
if !(mailSupportMailErr == nil) {
err = fmt.Errorf("Validating config: SupportMail could not be parsed (%w)", mailSupportMailErr)
log.Println(err)
}
if !(supportMail.Name == "") {
err = fmt.Errorf("Validating config: SupportMail must not contain a name")
log.Println(err)
}
if !(conf.SQL.Type == "SQLite" || conf.SQL.Type == "Mysql") { if !(conf.SQL.Type == "SQLite" || conf.SQL.Type == "Mysql") {
err = fmt.Errorf("Validating config: SQL type must be 'SQLite' or 'Mysql', but is '%s'.", conf.SQL.Type) err = fmt.Errorf("Validating config: SQL type must be 'SQLite' or 'Mysql', but is '%s'.", conf.SQL.Type)
log.Println(err.Error()) log.Println(err.Error())

View file

@ -28,7 +28,8 @@
"smtpPort": 25, "smtpPort": 25,
"smtpUseAuth": false, "smtpUseAuth": false,
"smtpIdentity": "", "smtpIdentity": "",
"smtpPassword": "" "smtpPassword": "",
"supportMail": "officeHoursSupport@localhost"
}, },
"SQL": { "SQL": {
"type": "SQLite", "type": "SQLite",

View file

@ -2,7 +2,7 @@
{{define "content"}} {{define "content"}}
<div class="col-md-8 offset-md-2"> <div class="col-md-8 offset-md-2">
Irgendetwas ist schief gegangen. Bitte sende folgende Daten an <a href="mailto:sprechstundentool@mathebau.de">sprechstundentool@mathebau.de</a> mit einer Beschreibung, was du tun wolltest. Irgendetwas ist schief gegangen. Bitte sende folgende Daten an <a href="mailto:{{.Config.Mailer.SupportMail}}">{{.Config.Mailer.SupportMail}}</a> mit einer Beschreibung, was du tun wolltest.
<br> <br>
{{.}} {{.}}
</div> </div>

View file

@ -50,7 +50,7 @@
<label for="veranstaltung">Veranstaltung</label> <label for="veranstaltung">Veranstaltung</label>
<div class="form-text"> <div class="form-text">
Wenn du eine Veranstaltung hier vermisst, schreibe an Wenn du eine Veranstaltung hier vermisst, schreibe an
<a href="mailto:sprechstundentool@mathebau.de?subject=Sprechstundentool: Neue Veranstaltung&body=Hey liebe Sprechstundentool-Admins,%0D%0A%0D%0Ameine Veranstaltung fehlt im Auswahlmenü.%0D%0AEs ist die Veranstaltung%0D%0A%0D%0AViele Grüße%0D%0A" tabindex="-1">sprechstundentool@mathebau.de</a>. <a href="mailto:{{.Config.Mailer.SupportMail}}?subject=Sprechstundentool: Neue Veranstaltung&body=Hey liebe Sprechstundentool-Admins,%0D%0A%0D%0Ameine Veranstaltung fehlt im Auswahlmenü.%0D%0AEs ist die Veranstaltung%0D%0A%0D%0AViele Grüße%0D%0A" tabindex="-1">{{.Config.Mailer.SupportMail}}</a>.
</div> </div>
</div> </div>

View file

@ -2,6 +2,11 @@
{{define "content"}} {{define "content"}}
<div class="col-md-8 offset-md-2"> <div class="col-md-8 offset-md-2">
<div class="alert alert-danger">
Die Mailzustellung an Web und GMX ist gerade gestört.
Falls deine Mailadresse dorthin weiterleitet und du die Bestätigung nicht erhältst,
melde dich bei <a href="mailto:{{.Config.Mailer.SupportMail}}">{{.Config.Mailer.SupportMail}}</a>.
</div>
Die Sprechstunde wurde angelegt. Die Sprechstunde wurde angelegt.
Du solltest eine Mail mit einem Aktivierungslink erhalten haben. Du solltest eine Mail mit einem Aktivierungslink erhalten haben.
Klicke auf diesen, um die Sprechstunde öffentlich anzuzeigen. Klicke auf diesen, um die Sprechstunde öffentlich anzuzeigen.

View file

@ -34,8 +34,7 @@
<div class="col-md-8 offset-md-2 bg-secondary bg-gradient my-3 p-3 rounded" style="--bs-bg-opacity: .3;"> <div class="col-md-8 offset-md-2 bg-secondary bg-gradient my-3 p-3 rounded" style="--bs-bg-opacity: .3;">
&COPY; <a class="text-body" href="https://mathebau.de/">Fachschaft Mathematik, TU Darmstadt</a> &COPY; <a class="text-body" href="https://mathebau.de/">Fachschaft Mathematik, TU Darmstadt</a>
<br> <br>
<!-- NOTE: when updating this hard coded email adress, also update it in addMask.html --> Technische Fragen an <a href="mailto:{{.Config.Mailer.SupportMail}}">{{.Config.Mailer.SupportMail}}</a>
Technische Fragen an <a href="mailto:sprechstundentool@mathebau.de">sprechstundentool@mathebau.de</a>
<br> <br>
Quellcode und Featurewünsche:&nbsp;<a href="https://gitea.mathebau.de/Fachschaft/sprechstunden-go">Gitea-Repository</a> Quellcode und Featurewünsche:&nbsp;<a href="https://gitea.mathebau.de/Fachschaft/sprechstunden-go">Gitea-Repository</a>
</div> </div>

View file

@ -2,7 +2,7 @@
{{define "content"}} {{define "content"}}
<div class="col-md-8 offset-md-2"> <div class="col-md-8 offset-md-2">
Irgendetwas ist schief gegangen. Bitte sende folgende Daten an <a href="mailto:sprechstundentool@mathebau.de">sprechstundentool@mathebau.de</a> mit einer Beschreibung, was du tun wolltest. Irgendetwas ist schief gegangen. Bitte sende folgende Daten an <a href="mailto:{{.Config.Mailer.SupportMail}}">{{.Config.Mailer.SupportMail}}</a> mit einer Beschreibung, was du tun wolltest.
<br> <br>
{{.}} {{.}}
</div>" </div>"