filebrowser/backend/settings/settings.go

59 lines
1.4 KiB
Go
Raw Permalink Normal View History

package settings
import (
"crypto/rand"
2024-12-17 00:01:55 +00:00
"github.com/gtsteffaniak/filebrowser/backend/users"
)
const DefaultUsersHomeBasePath = "/users"
// AuthMethod describes an authentication method.
type AuthMethod string
2021-07-26 10:00:05 +00:00
// GenerateKey generates a key of 512 bits.
func GenerateKey() ([]byte, error) {
2021-07-26 10:00:05 +00:00
b := make([]byte, 64) //nolint:gomnd
_, err := rand.Read(b)
// Note that err == nil only if we read len(b) bytes.
if err != nil {
return nil, err
}
return b, nil
}
2023-09-01 14:00:02 +00:00
2023-09-03 22:03:00 +00:00
func GetSettingsConfig(nameType string, Value string) string {
2023-09-01 14:00:02 +00:00
return nameType + Value
2023-09-03 22:03:00 +00:00
}
2024-10-07 22:44:53 +00:00
2024-11-21 00:15:30 +00:00
func AdminPerms() users.Permissions {
return users.Permissions{
2024-10-07 22:44:53 +00:00
Create: true,
Rename: true,
Modify: true,
Delete: true,
Share: true,
Download: true,
Admin: true,
2024-11-21 00:15:30 +00:00
Api: true,
2024-10-07 22:44:53 +00:00
}
}
2024-11-21 00:15:30 +00:00
// Apply applies the default options to a user.
func ApplyUserDefaults(u users.User) users.User {
u.StickySidebar = Config.UserDefaults.StickySidebar
u.DisableSettings = Config.UserDefaults.DisableSettings
u.DarkMode = Config.UserDefaults.DarkMode
u.Scope = Config.UserDefaults.Scope
u.Locale = Config.UserDefaults.Locale
u.ViewMode = Config.UserDefaults.ViewMode
u.SingleClick = Config.UserDefaults.SingleClick
u.Perm = Config.UserDefaults.Perm
u.Sorting = Config.UserDefaults.Sorting
u.Commands = Config.UserDefaults.Commands
2025-01-27 00:21:12 +00:00
u.ShowHidden = Config.UserDefaults.ShowHidden
2024-11-21 00:15:30 +00:00
u.DateFormat = Config.UserDefaults.DateFormat
return u
}