summaryrefslogtreecommitdiff
path: root/scheduler/scheduler.go
diff options
context:
space:
mode:
authorLizzy Hunt <lizzy.hunt@usu.edu>2024-03-27 15:10:39 -0600
committerLizzy Hunt <lizzy.hunt@usu.edu>2024-03-27 15:10:39 -0600
commit97efd2a3740412ec78a018da4fe068c141c9d1ec (patch)
tree73904689d6c69898bd834533d33b65106b14ce3e /scheduler/scheduler.go
parent0dc2679005e70c50024bc49e750f3998a0c4c24b (diff)
downloadhatecomputers.club-97efd2a3740412ec78a018da4fe068c141c9d1ec.tar.gz
hatecomputers.club-97efd2a3740412ec78a018da4fe068c141c9d1ec.zip
clean up old sessions every 500 seconds
Diffstat (limited to 'scheduler/scheduler.go')
-rw-r--r--scheduler/scheduler.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/scheduler/scheduler.go b/scheduler/scheduler.go
new file mode 100644
index 0000000..bdbab8e
--- /dev/null
+++ b/scheduler/scheduler.go
@@ -0,0 +1,19 @@
+package scheduler
+
+import (
+ "database/sql"
+ "log"
+ "time"
+
+ "git.hatecomputers.club/hatecomputers/hatecomputers.club/database"
+ "github.com/go-co-op/gocron"
+)
+
+func StartScheduler(dbConn *sql.DB) {
+ scheduler := gocron.NewScheduler(time.Local)
+ scheduler.Every(500).Seconds().Do(func() {
+ log.Println("deleting expired sessions")
+ database.DeleteExpiredSessions(dbConn)
+ })
+ scheduler.StartAsync()
+}