Jelajahi Sumber

[bugfix] missing members on channel data

B Thibault 8 tahun lalu
induk
melakukan
10d93c1e3c
1 mengubah file dengan 12 tambahan dan 1 penghapusan
  1. 12 1
      srv/src/slack.js

+ 12 - 1
srv/src/slack.js

@@ -120,13 +120,24 @@ Slack.prototype.connect = function(cb) {
                 } else {
                     this.data = new SlackData(this);
 
+                    // Merge body.channels (missing unread stuff) and channels data (missing members)
+                    body["channels"].forEach(function(channelData) {
+                        for (var i =0, nbChans = channels["channels"].length; i < nbChans; i++) {
+                            if (channels["channels"][i]["id"] === channelData["id"]) {
+                                channelData["unread_count"] = channels["channels"][i]["unread_count"];
+                                break;
+                            }
+                        }
+                    });
+
                     // TODO deal with channels["threads"]
+
                     _this.data.updateStatic({
                         team: body["team"],
                         users: body["users"],
                         bots: body["bots"],
                         self: body["self"],
-                        channels: channels["channels"],
+                        channels: body["channels"],
                         groups: channels["groups"],
                         ims: channels["ims"],
                         mpims: channels["mpims"]