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 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 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 * * * *"
|
// 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)
|
courses := events.GetAllCourses(app)
|
||||||
|
|
||||||
|
@@ -106,7 +106,7 @@ func GetAllModulesForCourse(app *pocketbase.PocketBase, course string, semester
|
|||||||
var events model.Events
|
var events model.Events
|
||||||
|
|
||||||
// get all events from event records in the events collection
|
// 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 {
|
if err != nil {
|
||||||
print("Error while getting events from database: ", err)
|
print("Error while getting events from database: ", err)
|
||||||
return nil, 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
|
//get all events for the course and the semester
|
||||||
events, err := db.GetAllModulesForCourse(app, course, "ws")
|
events, err := db.GetAllModulesForCourse(app, course, "ws")
|
||||||
if err != nil {
|
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 there are no events in the database, save the new events
|
||||||
if len(events) == 0 {
|
if len(events) == 0 {
|
||||||
_, dbError = db.SaveEvents(seminarGroups, collection, app)
|
_, dbError = db.SaveEvents(seminarGroups, collection, app)
|
||||||
|
Reference in New Issue
Block a user