github.com/mattermosttest/mattermost-server/v5@v5.0.0-20200917143240-9dfa12e121f9/cmd/mattermost/commands/userargs.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package commands 5 6 import ( 7 "github.com/mattermost/mattermost-server/v5/app" 8 "github.com/mattermost/mattermost-server/v5/model" 9 ) 10 11 func getUsersFromUserArgs(a *app.App, userArgs []string) []*model.User { 12 users := make([]*model.User, 0, len(userArgs)) 13 for _, userArg := range userArgs { 14 user := getUserFromUserArg(a, userArg) 15 users = append(users, user) 16 } 17 return users 18 } 19 20 func getUserFromUserArg(a *app.App, userArg string) *model.User { 21 user, _ := a.Srv().Store.User().GetByEmail(userArg) 22 23 if user == nil { 24 var err *model.AppError 25 if user, err = a.Srv().Store.User().GetByUsername(userArg); err == nil { 26 return user 27 } 28 } 29 30 if user == nil { 31 user, _ = a.Srv().Store.User().Get(userArg) 32 } 33 34 return user 35 }