ControlInput updating nick view properly
[KiwiIRC.git] / client / assets / dev / applet_chanlist.js
index 629ea092478d0e9144b1e40e1b886bf959c47baa..7b27735a5635911b82b5d5ff1c528ca2cdb1ee82 100644 (file)
 \r
 \r
 \r
-    _kiwi.applets.Chanlist = Backbone.Model.extend({\r
+    var Applet = Backbone.Model.extend({\r
         initialize: function () {\r
             this.set('title', 'Channel List');\r
             this.view = new View();\r
+\r
+            this.network = _kiwi.global.components.Network();\r
+            this.network.on('onlist_channel', this.onListChannel, this);\r
+            this.network.on('onlist_start', this.onListStart, this);\r
         },\r
 \r
 \r
+        // New channels to add to our list\r
+        onListChannel: function (event) {\r
+            console.log(event);\r
+            this.addChannel(event.chans);\r
+        },\r
+\r
+        // A new, fresh channel list starting\r
+        onListStart: function (event) {\r
+            // TODO: clear out our existing list\r
+        },\r
+\r
         addChannel: function (channels) {\r
             var that = this;\r
 \r
@@ -65,7 +80,7 @@
             }\r
             _.each(channels, function (chan) {\r
                 var html, channel;\r
-                html = '<tr><td><a class="chan">' + _.escape(chan.channel) + '</a></td><td class="num_users" style="text-align: center;">' + chan.num_users + '</td><td style="padding-left: 2em;">' + formatIRCMsg(_.escape(chan.topic)) + '</td></tr>';\r
+                html = '<tr><td><a class="chan" data-channel="' + chan.channel + '">' + _.escape(chan.channel) + '</a></td><td class="num_users" style="text-align: center;">' + chan.num_users + '</td><td style="padding-left: 2em;">' + formatIRCMsg(_.escape(chan.topic)) + '</td></tr>';\r
                 chan.html = html;\r
                 that.view.channels.push(chan);\r
             });\r
             this.view.$el.html('');\r
             this.view.remove();\r
             this.view = null;\r
+\r
+            // Remove any network event bindings\r
+            this.network.off();\r
         }\r
     });\r
 \r
 \r
+\r
+    _kiwi.model.Applet.register('kiwi_chanlist', Applet);\r
 })();
\ No newline at end of file