feat:#104 added fetcher for exams

This commit is contained in:
masterElmar
2023-12-08 11:39:45 +01:00
parent c6eeb7d81c
commit a79f9c3eb9
6 changed files with 86 additions and 6 deletions

View File

@@ -5,8 +5,12 @@ import (
"github.com/pocketbase/pocketbase/core"
"github.com/pocketbase/pocketbase/tools/cron"
"htwkalender/service/course"
"htwkalender/service/events"
"htwkalender/service/feed"
v2 "htwkalender/service/fetch/v2"
"htwkalender/service/functions/time"
"log"
"strconv"
)
func AddSchedules(app *pocketbase.PocketBase) {
@@ -26,6 +30,23 @@ func AddSchedules(app *pocketbase.PocketBase) {
// clean feeds older than 6 months
feed.ClearFeeds(app.Dao(), 6, time.RealClock{})
})
//delete all events and then fetch all events from remote this should be done every day at 4am
scheduler.MustAdd("fetchEvents", "0 4 * * *", func() {
err := events.DeleteAllEvents(app)
if err != nil {
log.Println(err)
}
err, savedEvents := v2.FetchAllEventsAndSave(app)
if err != nil {
log.Println(err)
} else {
log.Println("Successfully saved: " + strconv.FormatInt(int64(len(savedEvents)), 10) + " events")
}
})
scheduler.Start()
return nil
})