Move queue function to the top of the team-factory function.
authorMike Taylor <mike@indexdata.com>
Mon, 31 Mar 2014 16:21:51 +0000 (17:21 +0100)
committerMike Taylor <mike@indexdata.com>
Mon, 31 Mar 2014 16:21:51 +0000 (17:21 +0100)
log publishes on the "log" queue for the benefit of the Log widget.

src/mkws-team.js

index c7e20bf..adf1acf 100644 (file)
@@ -47,15 +47,39 @@ function team($, teamName) {
     that.set_perpage = function(val) { m_perpage = val };
 
 
+    // The following PubSub code is modified from the jQuery manual:
+    // https://api.jquery.com/jQuery.Callbacks/
+    //
+    // Use as:
+    // team.queue("eventName").subscribe(function(param1, param2 ...) { ... });
+    // team.queue("eventName").publish(arg1, arg2, ...);
+
+    var queues = {};
+    function queue(id) {
+       if (!queues[id]) {
+           var callbacks = $.Callbacks();
+           queues[id] = {
+               publish: callbacks.fire,
+               subscribe: callbacks.add,
+               unsubscribe: callbacks.remove
+           };
+       }
+       return queues[id];
+    };
+    that.queue = queue;
+
+
     function log(s) {
        var now = $.now();
        var timestamp = (((now - m_logTime.start)/1000).toFixed(3) + " (+" +
                         ((now - m_logTime.last)/1000).toFixed(3) + ") ");
        m_logTime.last = now;
        mkws.log(m_teamName + ": " + timestamp + s);
+       that.queue("log").publish(m_teamName, timestamp, s);
     }
     that.log = log;
 
+
     log("start running MKWS");
 
     m_sortOrder = m_config.sort_default;
@@ -741,27 +765,6 @@ function team($, teamName) {
     }
 
 
-    // The following PubSub code is modified from the jQuery manual:
-    // https://api.jquery.com/jQuery.Callbacks/
-    //
-    // Use as:
-    // team.queue("eventName").subscribe(function(param1, param2 ...) { ... });
-    // team.queue("eventName").publish(arg1, arg2, ...);
-
-    var queues = {};
-    var queue = function(id) {
-       if (!queues[id]) {
-           var callbacks = $.Callbacks();
-           queues[id] = {
-               publish: callbacks.fire,
-               subscribe: callbacks.add,
-               unsubscribe: callbacks.remove
-           };
-       }
-       return queues[id];
-    };
-    that.queue = queue;
-
     mkwsHtmlAll()
 
     return that;