Monorepo for Tangled
Something went wrong. Try again.
Go
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364package db
import ( "github.com/bluesky-social/indigo/atproto/syntax")
type SpindleMember struct { Id int Did syntax.DID // owner of the record Rkey string // rkey of the record Instance string Subject syntax.DID // the member being added}
func AddSpindleMember(q DBTX, member SpindleMember) error { _, err := q.Exec( `insert or ignore into spindle_members (did, rkey, instance, subject) values (?, ?, ?, ?)`, member.Did, member.Rkey, member.Instance, member.Subject, ) return err}
func RemoveSpindleMember(q DBTX, ownerDid, rkey string) error { _, err := q.Exec( "delete from spindle_members where did = ? and rkey = ?", ownerDid, rkey, ) return err}
func CountSpindleMembersBySubject(q DBTX, subject string) (int, error) { var count int err := q.QueryRow( `select count(*) from spindle_members where subject = ?`, subject, ).Scan(&count) return count, err}
func GetSpindleMember(q DBTX, did, rkey string) (*SpindleMember, error) { query := `select id, did, rkey, instance, subject from spindle_members where did = ? and rkey = ?`
var member SpindleMember err := q.QueryRow(query, did, rkey).Scan( &member.Id, &member.Did, &member.Rkey, &member.Instance, &member.Subject, ) if err != nil { return nil, err }
return &member, nil}