summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorGeorge Goldberg <george@gberg.me>2017-04-03 19:32:57 +0100
committerGitHub <noreply@github.com>2017-04-03 19:32:57 +0100
commit1bcb5cdb9d6de7690edf271da5eedc6fb74789d9 (patch)
tree7103c1ebf91cc1c04b82c75432faf7f55f49f8ec /model
parent4ebc85e05c3f45d2978c6fb8f9874b93658c3607 (diff)
downloadchat-1bcb5cdb9d6de7690edf271da5eedc6fb74789d9.tar.gz
chat-1bcb5cdb9d6de7690edf271da5eedc6fb74789d9.tar.bz2
chat-1bcb5cdb9d6de7690edf271da5eedc6fb74789d9.zip
PLT-6169: Batch add users to teams. (#5953)
Diffstat (limited to 'model')
-rw-r--r--model/client4.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/model/client4.go b/model/client4.go
index fff31daec..6e7f95c99 100644
--- a/model/client4.go
+++ b/model/client4.go
@@ -978,6 +978,22 @@ func (c *Client4) AddTeamMember(teamId, userId, hash, dataToHash, inviteId strin
}
}
+// AddTeamMember adds a number of users to a team and returns the team members.
+func (c *Client4) AddTeamMembers(teamId string, userIds []string) ([]*TeamMember, *Response) {
+ var members []*TeamMember
+ for _, userId := range userIds {
+ member := &TeamMember{TeamId: teamId, UserId: userId}
+ members = append(members, member)
+ }
+
+ if r, err := c.DoApiPost(c.GetTeamMembersRoute(teamId)+"/batch", TeamMembersToJson(members)); err != nil {
+ return nil, &Response{StatusCode: r.StatusCode, Error: err}
+ } else {
+ defer closeBody(r)
+ return TeamMembersFromJson(r.Body), BuildResponse(r)
+ }
+}
+
// RemoveTeamMember will remove a user from a team.
func (c *Client4) RemoveTeamMember(teamId, userId string) (bool, *Response) {
if r, err := c.DoApiDelete(c.GetTeamMemberRoute(teamId, userId)); err != nil {