mirror of
https://gitlab.dit.htwk-leipzig.de/htwk-software/htwkalender.git
synced 2025-08-02 17:59:14 +02:00
fixed db query and scheduled update process
This commit is contained in:
@@ -16,7 +16,7 @@ func AddSchedules(app *pocketbase.PocketBase) {
|
||||
// Every hour update all courses (5 segments - minute, hour, day, month, weekday) "0 * * * *"
|
||||
// Every three hours update all courses (5 segments - minute, hour, day, month, weekday) "0 */3 * * *"
|
||||
// Every 10 minutes update all courses (5 segments - minute, hour, day, month, weekday) "*/10 * * * *"
|
||||
scheduler.MustAdd("updateCourse", "*/10 * * * *", func() {
|
||||
scheduler.MustAdd("updateCourse", "*/30 * * * *", func() {
|
||||
|
||||
courses := events.GetAllCourses(app)
|
||||
|
||||
|
@@ -106,7 +106,7 @@ func GetAllModulesForCourse(app *pocketbase.PocketBase, course string, semester
|
||||
var events model.Events
|
||||
|
||||
// get all events from event records in the events collection
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).Distinct(true).All(&events)
|
||||
err := app.Dao().DB().Select("*").From("events").Where(dbx.NewExp("course = {:course} AND semester = {:semester}", dbx.Params{"course": course, "semester": semester})).GroupBy("Name").Distinct(true).All(&events)
|
||||
if err != nil {
|
||||
print("Error while getting events from database: ", err)
|
||||
return nil, err
|
||||
|
@@ -105,9 +105,17 @@ func UpdateModulesForCourse(app *pocketbase.PocketBase, course string) error {
|
||||
//get all events for the course and the semester
|
||||
events, err := db.GetAllModulesForCourse(app, course, "ws")
|
||||
if err != nil {
|
||||
return apis.NewNotFoundError("Events could not be found", err)
|
||||
return apis.NewNotFoundError("Events for winter semester could not be found", err)
|
||||
}
|
||||
|
||||
// append all events for the course and the semester to the events array for ss
|
||||
summerEvents, err := db.GetAllModulesForCourse(app, course, "ss")
|
||||
if err != nil {
|
||||
return apis.NewNotFoundError("Events for summer semester could not be found", err)
|
||||
}
|
||||
|
||||
events = append(events, summerEvents...)
|
||||
|
||||
//if there are no events in the database, save the new events
|
||||
if len(events) == 0 {
|
||||
_, dbError = db.SaveEvents(seminarGroups, collection, app)
|
||||
|
Reference in New Issue
Block a user