Antonio Mika
·
2026-10-10
1package pastes
2
3import (
4 "time"
5)
6
7func deleteExpiredPosts(cfg *Config, dbpool DB) error {
8 cfg.Logger.Info("checking for expired posts")
9 posts, err := dbpool.FindExpiredPosts(cfg.Space)
10 if err != nil {
11 return err
12 }
13
14 postIds := []string{}
15 for _, post := range posts {
16 postIds = append(postIds, post.ID)
17 }
18
19 cfg.Logger.Info("deleting expired posts", "len", len(postIds))
20 err = dbpool.RemovePosts(postIds)
21 if err != nil {
22 return err
23 }
24
25 return nil
26}
27
28func CronDeleteExpiredPosts(cfg *Config, dbpool DB) {
29 for {
30 err := deleteExpiredPosts(cfg, dbpool)
31 if err != nil {
32 cfg.Logger.Error(err.Error())
33 }
34 time.Sleep(12 * time.Hour)
35 }
36}