type.go 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. package site
  2. import (
  3. "time"
  4. "github.com/0xJacky/Nginx-UI/internal/cert"
  5. "github.com/0xJacky/Nginx-UI/internal/nginx"
  6. "github.com/0xJacky/Nginx-UI/model"
  7. "github.com/sashabaranov/go-openai"
  8. )
  9. type SiteStatus string
  10. const (
  11. SiteStatusEnabled SiteStatus = "enabled"
  12. SiteStatusDisabled SiteStatus = "disabled"
  13. SiteStatusMaintenance SiteStatus = "maintenance"
  14. )
  15. type Site struct {
  16. *model.Site
  17. Name string `json:"name"`
  18. ModifiedAt time.Time `json:"modified_at"`
  19. Status SiteStatus `json:"status"`
  20. Config string `json:"config"`
  21. AutoCert bool `json:"auto_cert"`
  22. ChatGPTMessages []openai.ChatCompletionMessage `json:"chatgpt_messages,omitempty"`
  23. Tokenized *nginx.NgxConfig `json:"tokenized,omitempty"`
  24. CertInfo map[int][]*cert.Info `json:"cert_info,omitempty"`
  25. Filepath string `json:"filepath"`
  26. }