mirror of
https://github.com/grafana/grafana.git
synced 2025-02-16 18:34:52 -06:00
* Move user not found err to user service * User ErrCaseInsensitive from user pkg * User ErrUserAlreadyExists from user pkg * User ErrLastGrafanaAdmin from user pkg * Remove errors from model
72 lines
1.4 KiB
Go
72 lines
1.4 KiB
Go
package user
|
|
|
|
import (
|
|
"errors"
|
|
"time"
|
|
)
|
|
|
|
type HelpFlags1 uint64
|
|
|
|
// Typed errors
|
|
var (
|
|
ErrCaseInsensitive = errors.New("case insensitive conflict")
|
|
ErrUserNotFound = errors.New("user not found")
|
|
ErrUserAlreadyExists = errors.New("user already exists")
|
|
ErrLastGrafanaAdmin = errors.New("cannot remove last grafana admin")
|
|
ErrProtectedUser = errors.New("cannot adopt protected user")
|
|
)
|
|
|
|
type User struct {
|
|
ID int64 `xorm:"pk autoincr 'id'"`
|
|
Version int
|
|
Email string
|
|
Name string
|
|
Login string
|
|
Password string
|
|
Salt string
|
|
Rands string
|
|
Company string
|
|
EmailVerified bool
|
|
Theme string
|
|
HelpFlags1 HelpFlags1
|
|
IsDisabled bool
|
|
|
|
IsAdmin bool
|
|
IsServiceAccount bool
|
|
OrgID int64 `xorm:"org_id"`
|
|
|
|
Created time.Time
|
|
Updated time.Time
|
|
LastSeenAt time.Time
|
|
}
|
|
|
|
type CreateUserCommand struct {
|
|
Email string
|
|
Login string
|
|
Name string
|
|
Company string
|
|
OrgID int64
|
|
OrgName string
|
|
Password string
|
|
EmailVerified bool
|
|
IsAdmin bool
|
|
IsDisabled bool
|
|
SkipOrgSetup bool
|
|
DefaultOrgRole string
|
|
IsServiceAccount bool
|
|
}
|
|
|
|
func (u *User) NameOrFallback() string {
|
|
if u.Name != "" {
|
|
return u.Name
|
|
}
|
|
if u.Login != "" {
|
|
return u.Login
|
|
}
|
|
return u.Email
|
|
}
|
|
|
|
type DeleteUserCommand struct {
|
|
UserID int64
|
|
}
|