this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

split out settings (stored in db) to separate file

+58 -53
-53
cmd/relay/main.go
··· 4 4 "context" 5 5 "crypto/rand" 6 6 "encoding/base64" 7 - "errors" 8 7 "fmt" 9 8 "github.com/bluesky-social/indigo/atproto/identity" 10 9 "github.com/bluesky-social/indigo/cmd/relay/events/diskpersist" 11 - "gorm.io/gorm" 12 10 "io" 13 11 "log/slog" 14 12 _ "net/http/pprof" ··· 16 14 "os" 17 15 "os/signal" 18 16 "path/filepath" 19 - "strconv" 20 17 "strings" 21 18 "syscall" 22 19 "time" ··· 426 423 } 427 424 } 428 425 } 429 - 430 - // RelaySetting is a gorm model 431 - type RelaySetting struct { 432 - Name string `gorm:"primarykey"` 433 - Value string 434 - } 435 - 436 - func getRelaySetting(db *gorm.DB, name string) (value string, found bool, err error) { 437 - var setting RelaySetting 438 - dbResult := db.First(&setting, "name = ?", name) 439 - if errors.Is(dbResult.Error, gorm.ErrRecordNotFound) { 440 - return "", false, nil 441 - } 442 - if dbResult.Error != nil { 443 - return "", false, dbResult.Error 444 - } 445 - return setting.Value, true, nil 446 - } 447 - 448 - func setRelaySetting(db *gorm.DB, name string, value string) error { 449 - return db.Transaction(func(tx *gorm.DB) error { 450 - var setting RelaySetting 451 - found := tx.First(&setting, "name = ?", name) 452 - if errors.Is(found.Error, gorm.ErrRecordNotFound) { 453 - // ok! create it 454 - setting.Name = name 455 - setting.Value = value 456 - return tx.Create(&setting).Error 457 - } else if found.Error != nil { 458 - return found.Error 459 - } 460 - setting.Value = value 461 - return tx.Save(&setting).Error 462 - }) 463 - } 464 - 465 - func getRelaySettingBool(db *gorm.DB, name string) (value bool, found bool, err error) { 466 - strval, found, err := getRelaySetting(db, name) 467 - if err != nil || !found { 468 - return false, found, err 469 - } 470 - value, err = strconv.ParseBool(strval) 471 - if err != nil { 472 - return false, false, err 473 - } 474 - return value, true, nil 475 - } 476 - func setRelaySettingBool(db *gorm.DB, name string, value bool) error { 477 - return setRelaySetting(db, name, strconv.FormatBool(value)) 478 - }
+58
cmd/relay/settings.go
··· 1 + package main 2 + 3 + import ( 4 + "errors" 5 + "strconv" 6 + 7 + "gorm.io/gorm" 8 + ) 9 + 10 + // RelaySetting is a gorm model 11 + type RelaySetting struct { 12 + Name string `gorm:"primarykey"` 13 + Value string 14 + } 15 + 16 + func getRelaySetting(db *gorm.DB, name string) (value string, found bool, err error) { 17 + var setting RelaySetting 18 + dbResult := db.First(&setting, "name = ?", name) 19 + if errors.Is(dbResult.Error, gorm.ErrRecordNotFound) { 20 + return "", false, nil 21 + } 22 + if dbResult.Error != nil { 23 + return "", false, dbResult.Error 24 + } 25 + return setting.Value, true, nil 26 + } 27 + 28 + func setRelaySetting(db *gorm.DB, name string, value string) error { 29 + return db.Transaction(func(tx *gorm.DB) error { 30 + var setting RelaySetting 31 + found := tx.First(&setting, "name = ?", name) 32 + if errors.Is(found.Error, gorm.ErrRecordNotFound) { 33 + // ok! create it 34 + setting.Name = name 35 + setting.Value = value 36 + return tx.Create(&setting).Error 37 + } else if found.Error != nil { 38 + return found.Error 39 + } 40 + setting.Value = value 41 + return tx.Save(&setting).Error 42 + }) 43 + } 44 + 45 + func getRelaySettingBool(db *gorm.DB, name string) (value bool, found bool, err error) { 46 + strval, found, err := getRelaySetting(db, name) 47 + if err != nil || !found { 48 + return false, found, err 49 + } 50 + value, err = strconv.ParseBool(strval) 51 + if err != nil { 52 + return false, false, err 53 + } 54 + return value, true, nil 55 + } 56 + func setRelaySettingBool(db *gorm.DB, name string, value bool) error { 57 + return setRelaySetting(db, name, strconv.FormatBool(value)) 58 + }