user.go 419 B

123456789101112131415161718192021222324252627
  1. package config
  2. type UserLevel int
  3. const (
  4. UserLevelAdmin = UserLevel(999)
  5. UserLevelUntrusted = UserLevel(0)
  6. )
  7. type User interface {
  8. ID() *ID
  9. Level() UserLevel
  10. }
  11. type UserSettings struct {
  12. PayloadReadTimeout int
  13. }
  14. func GetUserSettings(level UserLevel) UserSettings {
  15. settings := UserSettings {
  16. PayloadReadTimeout: 120,
  17. }
  18. if level > 0 {
  19. settings.PayloadReadTimeout = 0
  20. }
  21. return settings
  22. }