settings.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package models
  2. type Theme string
  3. const (
  4. Dark Theme = "dark"
  5. Light Theme = "light"
  6. System Theme = "system"
  7. )
  8. type ServerSettings struct {
  9. NetclientAutoUpdate bool `json:"netclientautoupdate"`
  10. Verbosity int32 `json:"verbosity"`
  11. AuthProvider string `json:"authprovider"`
  12. OIDCIssuer string `json:"oidcissuer"`
  13. ClientID string `json:"client_id"`
  14. ClientSecret string `json:"client_secret"`
  15. SyncEnabled bool `json:"sync_enabled"`
  16. GoogleAdminEmail string `json:"google_admin_email"`
  17. GoogleSACredsJson string `json:"google_sa_creds_json"`
  18. AzureTenant string `json:"azure_tenant"`
  19. UserFilters []string `json:"user_filters"`
  20. GroupFilters []string `json:"group_filters"`
  21. IDPSyncInterval string `json:"idp_sync_interval"`
  22. Telemetry string `json:"telemetry"`
  23. BasicAuth bool `json:"basic_auth"`
  24. JwtValidityDuration int `json:"jwt_validity_duration"`
  25. RacAutoDisable bool `json:"rac_auto_disable"`
  26. RacRestrictToSingleNetwork bool `json:"rac_restrict_to_single_network"`
  27. EndpointDetection bool `json:"endpoint_detection"`
  28. AllowedEmailDomains string `json:"allowed_email_domains"`
  29. EmailSenderAddr string `json:"email_sender_addr"`
  30. EmailSenderUser string `json:"email_sender_user"`
  31. EmailSenderPassword string `json:"email_sender_password"`
  32. SmtpHost string `json:"smtp_host"`
  33. SmtpPort int `json:"smtp_port"`
  34. MetricInterval string `json:"metric_interval"`
  35. MetricsPort int `json:"metrics_port"`
  36. ManageDNS bool `json:"manage_dns"`
  37. DefaultDomain string `json:"default_domain"`
  38. Stun bool `json:"stun"`
  39. StunServers string `json:"stun_servers"`
  40. Theme Theme `json:"theme"`
  41. TextSize string `json:"text_size"`
  42. ReducedMotion bool `json:"reduced_motion"`
  43. }