diff options
author | George Goldberg <george@gberg.me> | 2018-03-13 13:36:23 +0000 |
---|---|---|
committer | George Goldberg <george@gberg.me> | 2018-03-13 13:36:23 +0000 |
commit | fadcdd271a68b38571b75d1d38ab023f940ac83a (patch) | |
tree | 7f413edd35401b54b2f4eb4a687da1ac273bcd4b /cmd/commands/userargs.go | |
parent | b66e4bc932ed76c1cfd2b5f4ec0cfce70cd9fbb4 (diff) | |
parent | f2d26801b9647715fb43af873354d8def753868b (diff) | |
download | chat-fadcdd271a68b38571b75d1d38ab023f940ac83a.tar.gz chat-fadcdd271a68b38571b75d1d38ab023f940ac83a.tar.bz2 chat-fadcdd271a68b38571b75d1d38ab023f940ac83a.zip |
Merge branch 'master' into advanced-permissions-phase-1
Diffstat (limited to 'cmd/commands/userargs.go')
-rw-r--r-- | cmd/commands/userargs.go | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/cmd/commands/userargs.go b/cmd/commands/userargs.go new file mode 100644 index 000000000..ddeed6460 --- /dev/null +++ b/cmd/commands/userargs.go @@ -0,0 +1,39 @@ +// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package commands + +import ( + "github.com/mattermost/mattermost-server/app" + "github.com/mattermost/mattermost-server/model" +) + +func getUsersFromUserArgs(a *app.App, userArgs []string) []*model.User { + users := make([]*model.User, 0, len(userArgs)) + for _, userArg := range userArgs { + user := getUserFromUserArg(a, userArg) + users = append(users, user) + } + return users +} + +func getUserFromUserArg(a *app.App, userArg string) *model.User { + var user *model.User + if result := <-a.Srv.Store.User().GetByEmail(userArg); result.Err == nil { + user = result.Data.(*model.User) + } + + if user == nil { + if result := <-a.Srv.Store.User().GetByUsername(userArg); result.Err == nil { + user = result.Data.(*model.User) + } + } + + if user == nil { + if result := <-a.Srv.Store.User().Get(userArg); result.Err == nil { + user = result.Data.(*model.User) + } + } + + return user +} |