diff options
author | Christopher Speller <crspeller@gmail.com> | 2015-11-12 12:35:47 -0500 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2015-11-12 12:35:47 -0500 |
commit | c1ab5adb209cefde121aff308b77e470368422cd (patch) | |
tree | a5f11345a5a0ea2447300eadea59e948e8003c5e /api | |
parent | 67b92f32481dba243786821ed3eb189c0bd7261d (diff) | |
parent | be43522117e637271509cf24244f554a437c0578 (diff) | |
download | chat-c1ab5adb209cefde121aff308b77e470368422cd.tar.gz chat-c1ab5adb209cefde121aff308b77e470368422cd.tar.bz2 chat-c1ab5adb209cefde121aff308b77e470368422cd.zip |
Merge pull request #1410 from hmhealey/plt906
PLT-906 Added ChannelExtra.MemberCount field
Diffstat (limited to 'api')
-rw-r--r-- | api/channel.go | 7 | ||||
-rw-r--r-- | api/channel_test.go | 4 |
2 files changed, 10 insertions, 1 deletions
diff --git a/api/channel.go b/api/channel.go index 44be1cf97..75ca9680d 100644 --- a/api/channel.go +++ b/api/channel.go @@ -707,6 +707,7 @@ func getChannelExtraInfo(c *Context, w http.ResponseWriter, r *http.Request) { scm := Srv.Store.Channel().GetMember(id, c.Session.UserId) ecm := Srv.Store.Channel().GetExtraMembers(id, 20) + ccm := Srv.Store.Channel().GetMemberCount(id) if cmresult := <-scm; cmresult.Err != nil { c.Err = cmresult.Err @@ -714,9 +715,13 @@ func getChannelExtraInfo(c *Context, w http.ResponseWriter, r *http.Request) { } else if ecmresult := <-ecm; ecmresult.Err != nil { c.Err = ecmresult.Err return + } else if ccmresult := <-ccm; ccmresult.Err != nil { + c.Err = ccmresult.Err + return } else { member := cmresult.Data.(model.ChannelMember) extraMembers := ecmresult.Data.([]model.ExtraMember) + memberCount := ccmresult.Data.(int64) if !c.HasPermissionsToTeam(channel.TeamId, "getChannelExtraInfo") { return @@ -732,7 +737,7 @@ func getChannelExtraInfo(c *Context, w http.ResponseWriter, r *http.Request) { return } - data := model.ChannelExtra{Id: channel.Id, Members: extraMembers} + data := model.ChannelExtra{Id: channel.Id, Members: extraMembers, MemberCount: memberCount} w.Header().Set(model.HEADER_ETAG_SERVER, extraEtag) w.Header().Set("Expires", "-1") w.Write([]byte(data.ToJson())) diff --git a/api/channel_test.go b/api/channel_test.go index a41f63b1b..faed387dd 100644 --- a/api/channel_test.go +++ b/api/channel_test.go @@ -677,6 +677,10 @@ func TestGetChannelExtraInfo(t *testing.T) { data := rget.Data.(*model.ChannelExtra) if data.Id != channel1.Id { t.Fatal("couldnt't get extra info") + } else if len(data.Members) != 1 { + t.Fatal("got incorrect members") + } else if data.MemberCount != 1 { + t.Fatal("got incorrect member count") } // |