defaults.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package data
  2. import (
  3. "github.com/owncast/owncast/config"
  4. "github.com/owncast/owncast/models"
  5. )
  6. // HasPopulatedDefaults will determine if the defaults have been inserted into the database.
  7. func HasPopulatedDefaults() bool {
  8. hasPopulated, err := _datastore.GetBool("HAS_POPULATED_DEFAULTS")
  9. if err != nil {
  10. return false
  11. }
  12. return hasPopulated
  13. }
  14. func hasPopulatedFederationDefaults() bool {
  15. hasPopulated, err := _datastore.GetBool("HAS_POPULATED_FEDERATION_DEFAULTS")
  16. if err != nil {
  17. return false
  18. }
  19. return hasPopulated
  20. }
  21. // PopulateDefaults will set default values in the database.
  22. func PopulateDefaults() {
  23. _datastore.warmCache()
  24. defaults := config.GetDefaults()
  25. if HasPopulatedDefaults() {
  26. return
  27. }
  28. _ = SetAdminPassword(defaults.AdminPassword)
  29. _ = SetStreamKeys(defaults.StreamKeys)
  30. _ = SetHTTPPortNumber(float64(defaults.WebServerPort))
  31. _ = SetRTMPPortNumber(float64(defaults.RTMPServerPort))
  32. _ = SetLogoPath(defaults.Logo)
  33. _ = SetServerMetadataTags([]string{"owncast", "streaming"})
  34. _ = SetServerSummary(defaults.Summary)
  35. _ = SetServerWelcomeMessage("")
  36. _ = SetServerName(defaults.Name)
  37. _ = SetExtraPageBodyContent(defaults.PageBodyContent)
  38. _ = SetFederationGoLiveMessage(defaults.FederationGoLiveMessage)
  39. _ = SetSocialHandles([]models.SocialHandle{
  40. {
  41. Platform: "github",
  42. URL: "https://github.com/owncast/owncast",
  43. },
  44. })
  45. _ = _datastore.SetBool("HAS_POPULATED_DEFAULTS", true)
  46. }