Compare commits

...

4 commits

9 changed files with 29 additions and 13 deletions

View file

@ -45,7 +45,7 @@ func (b *BaseHandler) DeleteOfficeHourHandler(w http.ResponseWriter, req *http.R
templating.ServeTemplate(w, "deleteMailForm", struct {
Error string
OfficeHour models.OfficeHour
}{"Die Sprechstunde wurde nicht mit dieser Mailadresse angegeben.", officeHour})
}{"Die Sprechstunde wurde nicht mit dieser Mailadresse angelegt.", officeHour})
return
}
_, err = b.requestRepo.Add(officeHour, models.RequestDelete)

View file

@ -51,6 +51,7 @@ func (b *BaseHandler) GetTimetable(officeHours []models.OfficeHour) (timetable m
func (b *BaseHandler) printTimetable(timetable map[models.Date]map[int]models.OfficeHour, slots []int, deleteIcons bool) template.HTML {
var tableBody string
var anyOfficeHourExists bool = false // do not show table if no entry in there
for hour := 8; hour < 19; hour += 1 {
for minute := 0; minute < 60; minute += b.config.Date.MinuteGranularity {
tableBody += "<tr>"
@ -93,6 +94,7 @@ func (b *BaseHandler) printTimetable(timetable map[models.Date]map[int]models.Of
// TODO: better error wrapping up to top-level request handler
}
tableBody += celldata.String()
anyOfficeHourExists = true
}
} else {
if slot+1 == slots[day] {
@ -106,6 +108,9 @@ func (b *BaseHandler) printTimetable(timetable map[models.Date]map[int]models.Of
tableBody += "</tr>\n"
}
}
if !anyOfficeHourExists {
return template.HTML("<p class=\"text-center\">Aktuell sind keine passenden Sprechstunden eingetragen.</p>")
}
var table bytes.Buffer
tableData := struct {

View file

@ -27,7 +27,7 @@
<label for="email">Email-Adresse</label>
<div class="form-text">
{{if ne .Config.Tutor.MailSuffix ""}}
Du musst hier eine Email-Adresse angeben, die auf „{{.Config.Tutor.MailSuffix}}“ endet.<br />
Du musst hier eine Email-Adresse angeben, die auf „{{.Config.Tutor.MailSuffix}}“ endet.<br>
{{end}}
Die Email-Adresse dient der Vermeidung von Spam und wird nicht veröffentlicht.
</div>

View file

@ -2,6 +2,8 @@
{{define "content"}}
<div class="col-md-8 offset-md-2">
Die Sprechstunde wurde angelegt. Du solltest eine Mail mit einem Aktivierungslink erhalten haben.
Die Sprechstunde wurde angelegt.
Du solltest eine Mail mit einem Aktivierungslink erhalten haben.
Klicke auf diesen, um die Sprechstunde öffentlich anzuzeigen.
</div>
{{end}}

View file

@ -6,8 +6,8 @@
<meta name="description" content="Eine Übersicht der Sprechstunden, die in den offenen Arbeitsräumen der Fachschaft Mathematik, TU Darmstadt, angeboten werden">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css" />
<link rel="stylesheet" href="/static/officeHours.css" />
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="/static/officeHours.css">
<title>{{block "title" .}}Start{{end}} Sprechstunden</title>
</head>
@ -33,10 +33,10 @@
<footer class="container">
<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>
<br />
<br>
<!-- NOTE: when updating this hard coded email adress, also update it in addMask.html -->
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>
</div>
</footer>

View file

@ -2,7 +2,7 @@
{{define "content"}}
<div class="col-md-8 offset-md-2">
Du solltest eine Mail mit einem Bestätigungslink erhalten haben. <br>
Sie wurde an die Adresse geschickt, mit der die Sprechstunde angelegt wurde.<br>
Du solltest eine Mail mit einem Bestätigungslink erhalten haben.
Klicke auf diesen, um die Sprechstunde endgültig zu löschen.
</div>
{{end}}

View file

@ -8,4 +8,12 @@
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanFri}}">Freitag</th>
</tr>
{{.TableBody}}
<tr>
<th class="px-2 text-center timetableRightBorder">&nbsp;</th>
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanMon}}">Montag</th>
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanTue}}">Dienstag</th>
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanWed}}">Mittwoch</th>
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanThu}}">Donnerstag</th>
<th class="px-2 text-center timetableRightBorder" colspan="{{.ColspanFri}}">Freitag</th>
</tr>
</table>

View file

@ -9,7 +9,7 @@
<form action="/confirmRequest">
<div class="input-group">
<div class="form-floating">
<input class="form-control required" type="text" name="code" id="code" required placeholder="Bestätigungscode" />
<input class="form-control required" type="text" name="code" id="code" required placeholder="Bestätigungscode">
<label for="code">Bestätigungscode</label>
</div>
<button class="btn btn-outline-primary" type="submit">Bestätigen</button>

View file

@ -4,7 +4,8 @@
{{if eq .OfficeHour.Date.Week 1}}in ungeraden Vorlesungswochen<br>{{end}}{{if eq .OfficeHour.Date.Week 2}}in geraden Vorlesungswochen<br>{{end}}
{{.OfficeHour.Course.Name}}<br>
{{.OfficeHour.Tutor.Name}}<br>
{{.OfficeHour.Room.Name}}<br>
{{if ne .OfficeHour.Info ""}}{{.OfficeHour.Info}}<br>{{end}}
{{if ne .OfficeHour.RoomName ""}}{{.OfficeHour.RoomName}}<br>{{end}}
{{.OfficeHour.Room.Name}}
{{- if ne .OfficeHour.RoomName ""}}: {{.OfficeHour.RoomName}}{{end -}}
<br>
{{if ne .OfficeHour.Info ""}}{{.OfficeHour.Info}}{{end}}
</td>