You've already forked filebrowser
mirror of
https://github.com/filebrowser/filebrowser.git
synced 2025-11-26 14:25:26 +08:00
feat: make server options a struct (#615)
Former-commit-id: a54bc7c8a0fb700d4f90f78c54d6cb028e8acea7 [formerly a0946a1d5b82ce5681684bc0f871bd892c4d6c3f] [formerly 6b23b0abbe5cde6a6348f982975d15a1161359de [formerly 0e7abaa7fb]]
Former-commit-id: cf9ea1110bcb8b5eb30ecd25db1928659ecea922 [formerly 38cebeff1f9e6b03760f7b277a3941f7bd733fb5]
Former-commit-id: db44c1d5ff8fed361849b5bf1fe48e04c75d7ce7
This commit is contained in:
@@ -8,8 +8,6 @@ type AuthMethod string
|
||||
// Settings contain the main settings of the application.
|
||||
type Settings struct {
|
||||
Key []byte `json:"key"`
|
||||
BaseURL string `json:"baseURL"`
|
||||
Root string `json:"root"`
|
||||
Signup bool `json:"signup"`
|
||||
Defaults UserDefaults `json:"defaults"`
|
||||
AuthMethod AuthMethod `json:"authMethod"`
|
||||
@@ -19,6 +17,17 @@ type Settings struct {
|
||||
Rules []rules.Rule `json:"rules"`
|
||||
}
|
||||
|
||||
// Server specific settings.
|
||||
type Server struct {
|
||||
Root string `json:"root"`
|
||||
BaseURL string `json:"baseURL"`
|
||||
TLSKey string `json:"tlsKey"`
|
||||
TLSCert string `json:"tlsCert"`
|
||||
Port string `json:"port"`
|
||||
Address string `json:"address"`
|
||||
Log string `json:"log"`
|
||||
}
|
||||
|
||||
// GetRules implements rules.Provider.
|
||||
func (s *Settings) GetRules() []rules.Rule {
|
||||
return s.Rules
|
||||
|
||||
@@ -12,6 +12,8 @@ import (
|
||||
type StorageBackend interface {
|
||||
Get() (*Settings, error)
|
||||
Save(*Settings) error
|
||||
GetServer() (*Server, error)
|
||||
SaveServer(*Server) error
|
||||
}
|
||||
|
||||
// Storage is a settings storage.
|
||||
@@ -39,8 +41,6 @@ var defaultEvents = []string{
|
||||
|
||||
// Save saves the settings for the current instance.
|
||||
func (s *Storage) Save(set *Settings) error {
|
||||
set.BaseURL = strings.TrimSuffix(set.BaseURL, "/")
|
||||
|
||||
if len(set.Key) == 0 {
|
||||
return errors.ErrEmptyKey
|
||||
}
|
||||
@@ -86,3 +86,14 @@ func (s *Storage) Save(set *Settings) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// GetServer wraps StorageBackend.GetServer.
|
||||
func (s *Storage) GetServer() (*Server, error) {
|
||||
return s.back.GetServer()
|
||||
}
|
||||
|
||||
// SaveServer wraps StorageBackend.SaveServer and adds some verification.
|
||||
func (s *Storage) SaveServer(ser *Server) error {
|
||||
ser.BaseURL = strings.TrimSuffix(ser.BaseURL, "/")
|
||||
return s.back.SaveServer(ser)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user