user.go 802 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package user
  2. import (
  3. "github.com/grafana/grafana/pkg/bus"
  4. "github.com/grafana/grafana/pkg/models"
  5. )
  6. // UpsertArgs are object for Upsert method
  7. type UpsertArgs struct {
  8. ReqContext *models.ReqContext
  9. ExternalUser *models.ExternalUserInfo
  10. SignupAllowed bool
  11. }
  12. // Upsert add/update grafana user
  13. func Upsert(args *UpsertArgs) (*models.User, error) {
  14. query := &models.UpsertUserCommand{
  15. ReqContext: args.ReqContext,
  16. ExternalUser: args.ExternalUser,
  17. SignupAllowed: args.SignupAllowed,
  18. }
  19. err := bus.Dispatch(query)
  20. if err != nil {
  21. return nil, err
  22. }
  23. return query.Result, nil
  24. }
  25. // Get the users
  26. func Get(
  27. query *models.SearchUsersQuery,
  28. ) ([]*models.UserSearchHitDTO, error) {
  29. if err := bus.Dispatch(query); err != nil {
  30. return nil, err
  31. }
  32. return query.Result.Users, nil
  33. }