Vertical ws
[mkws-moved-to-github.git] / tools / htdocs / mkws.js
index 52f8e73..b694bde 100644 (file)
@@ -67,7 +67,7 @@ Handlebars.registerHelper('commaList', function(items, options) {
 
 
 // Some functions are visible to be called from outside code, namely
-// generated HTML: mkws.switchView(), showDetails(), limitTarget(),
+// generated HTML: that.switchView(), showDetails(), limitTarget(),
 // limitQuery(), delimitTarget(), delimitQuery(), pagerPrev(),
 // pagerNext(), showPage(). Also mkws.M() is made available for the
 // Handlebars helper 'translate'
@@ -250,14 +250,14 @@ function team($, teamName) {
     // pz2.js event handlers:
     //
     function my_oninit(teamName) {
-       debug("init for " + teamName);
+       debug("init");
        m_paz.stat();
        m_paz.bytarget();
     }
 
 
     function my_onshow(data, teamName) {
-       debug("show for " + teamName);
+       debug("show");
        m_totalRec = data.merged;
        // move it out
        var pager = document.getElementById("mkwsPager");
@@ -292,13 +292,13 @@ function team($, teamName) {
     {
        var template = loadTemplate("Summary");
        hit._id = "mkwsRec_" + hit.recid;
-       hit._onclick = "mkws.showDetails(this.id, '" + m_teamName + "');return false;"
+       hit._onclick = "mkws.showDetails('" + m_teamName + "', this.id);return false;"
        return template(hit);
     }
 
 
     function my_onstat(data, teamName) {
-       debug("stat for " + teamName);
+       debug("stat");
        var stat = $('.mkwsStat.mkwsTeam_' + teamName);
        if (stat.length === 0)
            return;
@@ -312,7 +312,7 @@ function team($, teamName) {
 
 
     function my_onterm(data, teamName) {
-       debug("term for " + teamName);
+       debug("term");
        var node = $(".mkwsTermlists.mkwsTeam_" + teamName);
        if (node.length == 0) return;
 
@@ -358,7 +358,7 @@ function team($, teamName) {
                acc.push('target_id='+data[i].id+' ');
                action = 'mkws.limitTarget(\'' + m_teamName + '\', this.getAttribute(\'target_id\'),this.firstChild.nodeValue)';
            } else {
-               action = 'mkws.limitQuery(\'' + pzIndex + '\', this.firstChild.nodeValue)';
+               action = 'mkws.limitQuery(\'' + m_teamName + '\', \'' + pzIndex + '\', this.firstChild.nodeValue)';
            }
            acc.push('onclick="' + action + ';return false;">' + data[i].name + '</a>'
                     + ' <span>' + data[i].freq + '</span>');
@@ -369,7 +369,7 @@ function team($, teamName) {
 
 
     function my_onrecord(data, args, teamName) {
-       debug("record for " + teamName);
+       debug("record");
        // FIXME: record is async!!
        clearTimeout(m_paz.recordTimer);
        // in case on_show was faster to redraw element
@@ -383,7 +383,7 @@ function team($, teamName) {
 
 
     function my_onbytarget(data, teamName) {
-       debug("target for " + teamName);
+       debug("target");
        var targetDiv = $('.mkwsBytarget.mkwsTeam_' + teamName);
        if (!targetDiv) {
            return;
@@ -542,11 +542,11 @@ function team($, teamName) {
     }
 
 
-    // limit the query after clicking the facet
-    mkws.limitQuery = function (field, value)
+    // limit by target functions
+    that.limitTarget  = function (id, name)
     {
-       debug("limitQuery(field=" + field + ", value=" + value + ")");
-       m_filters.push({ field: field, value: value });
+       debug("limitTarget(id=" + id + ", name=" + name + ")");
+       m_filters.push({ id: id, name: name });
        redraw_navi();
        resetPage();
        loadSelect();
@@ -555,11 +555,11 @@ function team($, teamName) {
     }
 
 
-    // limit by target functions
-    that.limitTarget  = function (id, name)
+    // limit the query after clicking the facet
+    that.limitQuery = function (field, value)
     {
-       debug("limitTarget(id=" + id + ", name=" + name + ")");
-       m_filters.push({ id: id, name: name });
+       debug("limitQuery(field=" + field + ", value=" + value + ")");
+       m_filters.push({ field: field, value: value });
        redraw_navi();
        resetPage();
        loadSelect();
@@ -568,15 +568,13 @@ function team($, teamName) {
     }
 
 
-    mkws.delimitQuery = function (field, value)
+    that.delimitTarget = function (id)
     {
-       debug("delimitQuery(field=" + field + ", value=" + value + ")");
+       debug("delimitTarget(id=" + id + ")");
        var newFilters = [];
        for (var i in m_filters) {
            var filter = m_filters[i];
-           if (filter.field &&
-               field == filter.field &&
-               value == filter.value) {
+           if (filter.id) {
                debug("delimitTarget() removing filter " + $.toJSON(filter));
            } else {
                debug("delimitTarget() keeping filter " + $.toJSON(filter));
@@ -593,16 +591,18 @@ function team($, teamName) {
     }
 
 
-    mkws.delimitTarget = function (id)
+    that.delimitQuery = function (field, value)
     {
-       debug("delimitTarget(id=" + id + ")");
+       debug("delimitQuery(field=" + field + ", value=" + value + ")");
        var newFilters = [];
        for (var i in m_filters) {
            var filter = m_filters[i];
-           if (filter.id) {
-               debug("delimitTarget() removing filter " + $.toJSON(filter));
+           if (filter.field &&
+               field == filter.field &&
+               value == filter.value) {
+               debug("delimitQuery() removing filter " + $.toJSON(filter));
            } else {
-               debug("delimitTarget() keeping filter " + $.toJSON(filter));
+               debug("delimitQuery() keeping filter " + $.toJSON(filter));
                newFilters.push(filter);
            }
        }
@@ -628,11 +628,11 @@ function team($, teamName) {
            }
            var filter = m_filters[i];
            if (filter.id) {
-               text += M('source') + ': <a class="crossout" href="#" onclick="mkws.delimitTarget(' +
-                   "'" + filter.id + "'" + ');return false;">' + filter.name + '</a>';
+               text += M('source') + ': <a class="crossout" href="#" onclick="mkws.delimitTarget(\'' + m_teamName +
+                   "', '" + filter.id + "'" + ');return false;">' + filter.name + '</a>';
            } else {
-               text += M(filter.field) + ': <a class="crossout" href="#" onclick="mkws.delimitQuery(' +
-                   "'" + filter.field + "', '" + filter.value + "'" +
+               text += M(filter.field) + ': <a class="crossout" href="#" onclick="mkws.delimitQuery(\'' + m_teamName +
+                   "', '" + filter.field + "', '" + filter.value + "'" +
                    ');return false;">' + filter.value + '</a>';
            }
        }
@@ -1381,7 +1381,7 @@ function _mkws_jquery_plugin ($) {
     };
 
 
-    mkws.showDetails = function (prefixRecId, tname) {
+    mkws.showDetails = function (tname, prefixRecId) {
        mkws.teams[tname].showDetails(prefixRecId);
     }
 
@@ -1389,6 +1389,18 @@ function _mkws_jquery_plugin ($) {
        mkws.teams[tname].limitTarget(id, name);
     }
 
+    mkws.limitQuery  = function (tname, field, value) {
+       mkws.teams[tname].limitQuery(field, value);
+    }
+
+    mkws.delimitTarget = function (tname, id) {
+       mkws.teams[tname].delimitTarget(id);
+    }
+
+    mkws.delimitQuery = function (tname, field, value) {
+       mkws.teams[tname].delimitQuery(field, value);
+    }
+
 
     function default_mkws_config() {
        /* default mkws config */