forked from hailey.at/cocoon
An atproto PDS written in Go
at main 665 B view raw
1package server 2 3import ( 4 "encoding/json" 5 6 "github.com/haileyok/cocoon/models" 7 "github.com/labstack/echo/v4" 8) 9 10// This is kinda lame. Not great to implement app.bsky in the pds, but alas 11 12func (s *Server) handleActorPutPreferences(e echo.Context) error { 13 ctx := e.Request().Context() 14 15 repo := e.Get("repo").(*models.RepoActor) 16 17 var prefs map[string]any 18 if err := json.NewDecoder(e.Request().Body).Decode(&prefs); err != nil { 19 return err 20 } 21 22 b, err := json.Marshal(prefs) 23 if err != nil { 24 return err 25 } 26 27 if err := s.db.Exec(ctx, "UPDATE repos SET preferences = ? WHERE did = ?", nil, b, repo.Repo.Did).Error; err != nil { 28 return err 29 } 30 31 return nil 32}