summaryrefslogtreecommitdiffstats
path: root/api/channel.go
diff options
context:
space:
mode:
Diffstat (limited to 'api/channel.go')
-rw-r--r--api/channel.go24
1 files changed, 14 insertions, 10 deletions
diff --git a/api/channel.go b/api/channel.go
index 9216dbb09..803274d32 100644
--- a/api/channel.go
+++ b/api/channel.go
@@ -554,27 +554,31 @@ func getChannelExtraInfo(c *Context, w http.ResponseWriter, r *http.Request) {
id := params["id"]
sc := Srv.Store.Channel().Get(id)
- scm := Srv.Store.Channel().GetMember(id, c.Session.UserId)
- ecm := Srv.Store.Channel().GetExtraMembers(id, 20)
-
+ var channel *model.Channel
if cresult := <-sc; cresult.Err != nil {
c.Err = cresult.Err
return
- } else if cmresult := <-scm; cmresult.Err != nil {
+ } else {
+ channel = cresult.Data.(*model.Channel)
+ }
+
+ extraEtag := channel.ExtraEtag()
+ if HandleEtag(extraEtag, w, r) {
+ return
+ }
+
+ scm := Srv.Store.Channel().GetMember(id, c.Session.UserId)
+ ecm := Srv.Store.Channel().GetExtraMembers(id, 20)
+
+ if cmresult := <-scm; cmresult.Err != nil {
c.Err = cmresult.Err
return
} else if ecmresult := <-ecm; ecmresult.Err != nil {
c.Err = ecmresult.Err
return
} else {
- channel := cresult.Data.(*model.Channel)
member := cmresult.Data.(model.ChannelMember)
extraMembers := ecmresult.Data.([]model.ExtraMember)
- extraEtag := channel.ExtraEtag()
-
- if HandleEtag(extraEtag, w, r) {
- return
- }
if !c.HasPermissionsToTeam(channel.TeamId, "getChannelExtraInfo") {
return