github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/cmd/hkserver/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 "context" 8 9 "github.com/masterhung0112/hk_server/v5/app" 10 "github.com/masterhung0112/hk_server/v5/model" 11 ) 12 13 func getUsersFromUserArgs(a *app.App, userArgs []string) []*model.User { 14 users := make([]*model.User, 0, len(userArgs)) 15 for _, userArg := range userArgs { 16 user := getUserFromUserArg(a, userArg) 17 users = append(users, user) 18 } 19 return users 20 } 21 22 func getUserFromUserArg(a *app.App, userArg string) *model.User { 23 user, _ := a.Srv().Store.User().GetByEmail(userArg) 24 25 if user == nil { 26 var err error 27 if user, err = a.Srv().Store.User().GetByUsername(userArg); err == nil { 28 return user 29 } 30 } 31 32 if user == nil { 33 user, _ = a.Srv().Store.User().Get(context.Background(), userArg) 34 } 35 36 return user 37 }