diff options
author | r <r@freesoftwareextremist.com> | 2021-01-16 09:10:02 +0000 |
---|---|---|
committer | r <r@freesoftwareextremist.com> | 2021-01-16 09:49:15 +0000 |
commit | 91f68ccfb391ee53bfc36f4877ca8d8f63c8faf2 (patch) | |
tree | 1e1511a2d80840a68e81ad0a666bd8c2a7e105e4 /service/transport.go | |
parent | 384179e518c8d01a126e716a3f80a9543683e593 (diff) | |
download | bloat-91f68ccfb391ee53bfc36f4877ca8d8f63c8faf2.tar.gz bloat-91f68ccfb391ee53bfc36f4877ca8d8f63c8faf2.zip |
Add follow request support
Diffstat (limited to 'service/transport.go')
-rw-r--r-- | service/transport.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/service/transport.go b/service/transport.go index 80ad7f1..7ba52a4 100644 --- a/service/transport.go +++ b/service/transport.go @@ -403,6 +403,26 @@ func NewHandler(s *service, logger *log.Logger, staticDir string) http.Handler { return nil }, CSRF, HTML) + accept := handle(func(c *client) error { + id, _ := mux.Vars(c.Req)["id"] + err := s.Accept(c, id) + if err != nil { + return err + } + redirect(c, c.Req.Header.Get("Referer")) + return nil + }, CSRF, HTML) + + reject := handle(func(c *client) error { + id, _ := mux.Vars(c.Req)["id"] + err := s.Reject(c, id) + if err != nil { + return err + } + redirect(c, c.Req.Header.Get("Referer")) + return nil + }, CSRF, HTML) + mute := handle(func(c *client) error { id, _ := mux.Vars(c.Req)["id"] err := s.Mute(c, id) @@ -634,6 +654,8 @@ func NewHandler(s *service, logger *log.Logger, staticDir string) http.Handler { r.HandleFunc("/vote/{id}", vote).Methods(http.MethodPost) r.HandleFunc("/follow/{id}", follow).Methods(http.MethodPost) r.HandleFunc("/unfollow/{id}", unfollow).Methods(http.MethodPost) + r.HandleFunc("/accept/{id}", accept).Methods(http.MethodPost) + r.HandleFunc("/reject/{id}", reject).Methods(http.MethodPost) r.HandleFunc("/mute/{id}", mute).Methods(http.MethodPost) r.HandleFunc("/unmute/{id}", unMute).Methods(http.MethodPost) r.HandleFunc("/block/{id}", block).Methods(http.MethodPost) |