feat:#26 added new api route

This commit is contained in:
Elmar Kresse
2024-02-04 00:54:59 +01:00
parent 57ef3c2f70
commit 4878499650
4 changed files with 66 additions and 10 deletions

View File

@@ -82,13 +82,13 @@ func GetAllCourses(app *pocketbase.PocketBase) []string {
return courseArray
}
func GetAllCoursesForSemester(app *pocketbase.PocketBase, semester string) interface{} {
func GetAllCoursesForSemester(app *pocketbase.PocketBase, semester string) []string {
var courses []struct {
CourseShortcut string `db:"course" json:"course"`
}
// get all rooms from event records in the events collection
// get all courses for a specific semester
err := app.Dao().DB().Select("course").From("groups").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).All(&courses)
if err != nil {
slog.Error("Error while getting groups from database: ", err)
@@ -104,3 +104,25 @@ func GetAllCoursesForSemester(app *pocketbase.PocketBase, semester string) inter
return courseArray
}
func GetAllCoursesForSemesterWithEvents(app *pocketbase.PocketBase, semester string) ([]string, error) {
var courses []struct {
CourseShortcut string `db:"course" json:"course"`
}
// get all courses from events distinct for a specific semester
err := app.Dao().DB().Select("course").From("events").Where(dbx.NewExp("semester = {:semester}", dbx.Params{"semester": semester})).Distinct(true).All(&courses)
if err != nil {
slog.Error("Error while getting groups from database: ", err)
return nil, err
}
var courseArray []string
for _, course := range courses {
courseArray = append(courseArray, course.CourseShortcut)
}
return courseArray, nil
}