New team member-function, name().
[mkws-moved-to-github.git] / tools / htdocs / mkws.js
index a2f1ef9..039ca55 100644 (file)
@@ -183,16 +183,18 @@ function widget($, team, type, node) {
 
     if (type === 'Targets') {
        promoteTargets();
+    } else if (type === 'Stat') {
+       promoteStat();
+    } else {
+       // ### Handle other types here
     }
 
-    // ### More to do here, surely: e.g. wiring into the team
     mkws.debug("made widget(team=" + team + ", type=" + type + ", node=" + node);
+    return that;
 
-    function promoteTargets() {
-       mkws.debug("promoting widget to type Targets");
-       mkws.queue("targets").subscribe(function(data) {
-           mkws.debug("notified that there are targets");
 
+    function promoteTargets() {
+       mkws.queue("targets." + team.name()).subscribe(function(data) {
            if (node.length === 0) alert("huh?!");
 
            var table ='<table><thead><tr>' +
@@ -212,11 +214,23 @@ function widget($, team, type, node) {
            }
            
            table += '</tbody></table>';
-           $(node).html(table);
+           var subnode = $(node).children('.mkwsBytarget');
+           subnode.html(table);
        });
     }
 
-    return that;
+
+    function promoteStat() {
+       mkws.queue("stat").subscribe(function(data) {
+           if (node.length === 0)  alert("huh?!");
+
+           $(node).html('<span class="head">' + M('Status info') + '</span>' +
+               ' -- ' +
+               '<span class="clients">' + M('Active clients') + ': ' + data.activeclients + '/' + data.clients + '</span>' +
+               ' -- ' +
+               '<span class="records">' + M('Retrieved records') + ': ' + data.records + '/' + data.hits + '</span>');
+       });
+    }
 }
 
 
@@ -231,6 +245,7 @@ function widget($, team, type, node) {
 function team($, teamName) {
     var that = {};
     var m_teamName = teamName;
+    that.name = function() { return m_teamName; }
     var m_submitted = false;
     var m_query; // initially undefined
     var m_sort; // will be set below
@@ -283,33 +298,26 @@ function team($, teamName) {
     //
     // pz2.js event handlers:
     //
-    function onInit(teamName) {
+    function onInit() {
        debug("init");
        m_paz.stat();
        m_paz.bytarget();
     }
 
 
-    function onBytarget(data, teamName) {
+    function onBytarget(data) {
        debug("target");
-       mkws.queue("targets").publish(data);
+       mkws.queue("targets." + m_teamName).publish(data);
     }
 
 
-    function onStat(data, teamName) {
+    function onStat(data) {
        debug("stat");
-       var node = findnode('.mkwsStat');
-       if (node.length === 0) return;
-
-       node.html('<span class="head">' + M('Status info') + '</span>' +
-           ' -- ' +
-           '<span class="clients">' + M('Active clients') + ': ' + data.activeclients + '/' + data.clients + '</span>' +
-           ' -- ' +
-           '<span class="records">' + M('Retrieved records') + ': ' + data.records + '/' + data.hits + '</span>');
+       mkws.queue("stat").publish(data);
     }
 
 
-    function onTerm(data, teamName) {
+    function onTerm(data) {
        debug("term");
        var node = findnode(".mkwsTermlists");
        if (node.length == 0) return;