diff --git a/activityPub.go b/activityPub.go index 9fe4615..909acfa 100644 --- a/activityPub.go +++ b/activityPub.go @@ -34,17 +34,17 @@ func initActivityPub() error { return nil } // Add hooks - postHooks[postPostHook] = append(postHooks[postPostHook], func(p *post) { + postPostHooks = append(postPostHooks, func(p *post) { if p.isPublishedSectionPost() { p.apPost() } }) - postHooks[postUpdateHook] = append(postHooks[postUpdateHook], func(p *post) { + postUpdateHooks = append(postUpdateHooks, func(p *post) { if p.isPublishedSectionPost() { p.apUpdate() } }) - postHooks[postDeleteHook] = append(postHooks[postDeleteHook], func(p *post) { + postDeleteHooks = append(postDeleteHooks, func(p *post) { p.apDelete() }) // Prepare webfinger diff --git a/blogstats.go b/blogstats.go index b34f61f..014adeb 100644 --- a/blogstats.go +++ b/blogstats.go @@ -13,9 +13,9 @@ func initBlogStats() { f := func(p *post) { resetBlogStats(p.Blog) } - postHooks[postPostHook] = append(postHooks[postPostHook], f) - postHooks[postUpdateHook] = append(postHooks[postPostHook], f) - postHooks[postDeleteHook] = append(postHooks[postPostHook], f) + postPostHooks = append(postPostHooks, f) + postUpdateHooks = append(postUpdateHooks, f) + postDeleteHooks = append(postDeleteHooks, f) } func serveBlogStats(w http.ResponseWriter, r *http.Request) { diff --git a/hooks.go b/hooks.go index bf51339..eaf3d91 100644 --- a/hooks.go +++ b/hooks.go @@ -17,16 +17,14 @@ func preStartHooks() { } } -type postHookType string +type postHookFunc func(*post) -const ( - postPostHook postHookType = "post" - postUpdateHook postHookType = "update" - postDeleteHook postHookType = "delete" +var ( + postPostHooks []postHookFunc + postUpdateHooks []postHookFunc + postDeleteHooks []postHookFunc ) -var postHooks = map[postHookType][]func(*post){} - func (p *post) postPostHooks() { // Hooks after post published for _, cmdTmplString := range appConfig.Hooks.PostPost { @@ -37,7 +35,7 @@ func (p *post) postPostHooks() { }) }(p, cmdTmplString) } - for _, f := range postHooks[postPostHook] { + for _, f := range postPostHooks { go f(p) } } @@ -52,7 +50,7 @@ func (p *post) postUpdateHooks() { }) }(p, cmdTmplString) } - for _, f := range postHooks[postUpdateHook] { + for _, f := range postUpdateHooks { go f(p) } } @@ -66,7 +64,7 @@ func (p *post) postDeleteHooks() { }) }(p, cmdTmplString) } - for _, f := range postHooks[postDeleteHook] { + for _, f := range postDeleteHooks { go f(p) } } diff --git a/telegram.go b/telegram.go index ab6665b..74af3fe 100644 --- a/telegram.go +++ b/telegram.go @@ -21,7 +21,7 @@ func initTelegram() { } } if enable { - postHooks[postPostHook] = append(postHooks[postPostHook], func(p *post) { + postPostHooks = append(postPostHooks, func(p *post) { if p.isPublishedSectionPost() { p.tgPost() } diff --git a/webmention.go b/webmention.go index 4c364fd..02392d7 100644 --- a/webmention.go +++ b/webmention.go @@ -37,9 +37,9 @@ func initWebmention() { _ = p.sendWebmentions() } } - postHooks[postPostHook] = append(postHooks[postPostHook], hookFunc) - postHooks[postUpdateHook] = append(postHooks[postUpdateHook], hookFunc) - postHooks[postDeleteHook] = append(postHooks[postDeleteHook], hookFunc) + postPostHooks = append(postPostHooks, hookFunc) + postUpdateHooks = append(postUpdateHooks, hookFunc) + postDeleteHooks = append(postDeleteHooks, hookFunc) // Start verifier initWebmentionQueue() }