mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender.git
synced 2025-08-04 18:59:13 +02:00
38 lines
950 B
Go
38 lines
950 B
Go
package events
|
|
|
|
import (
|
|
"github.com/pocketbase/pocketbase"
|
|
"htwkalender/service/db"
|
|
"htwkalender/service/functions"
|
|
)
|
|
|
|
func GetAllCourses(app *pocketbase.PocketBase) []string {
|
|
return db.GetAllCourses(app)
|
|
}
|
|
|
|
func GetAllCoursesForSemester(app *pocketbase.PocketBase, semester string) []string {
|
|
return db.GetAllCoursesForSemester(app, semester)
|
|
}
|
|
|
|
func GetAllCoursesForSemesterWithEvents(app *pocketbase.PocketBase, semester string) ([]string, error) {
|
|
courses, err := db.GetAllCoursesForSemesterWithEvents(app, semester)
|
|
if err != nil {
|
|
return nil, err
|
|
} else {
|
|
// remove empty courses
|
|
courses = removeEmptyCourses(courses)
|
|
return courses, nil
|
|
}
|
|
}
|
|
|
|
func removeEmptyCourses(courses []string) []string {
|
|
var filteredCourses []string
|
|
|
|
for index, course := range courses {
|
|
if functions.OnlyWhitespace(course) || len(course) == 0 {
|
|
filteredCourses = append(courses[:index], courses[index+1:]...)
|
|
}
|
|
}
|
|
return filteredCourses
|
|
}
|