mkws.limitTarget invocations use data[i].id directly, rather than by
[mkws-moved-to-github.git] / src / mkws-widget-termlists.js
index dc89504..4a83727 100644 (file)
@@ -17,7 +17,7 @@ mkws.registerWidgetType('Termlists', function() {
   }
   this.node.html(acc.join(''));
 
-  widget.autosearch(this);
+  this.autosearch();
 });
 
 
@@ -32,7 +32,7 @@ mkws.registerWidgetType('Facet', function() {
   var name = that.config.facet;
   var ref = facetConfig[name] || [ "Unknown", 10, true ];
   var caption = this.config['facet_caption_' + name] || ref[0];
-  var max     = this.config['facet_max_' + name]     || ref[1];
+  var max     = parseInt(this.config['facet_max_' + name] || ref[1]);
   var pzIndex = ref[2] ? name : null;
 
   that.toString = function() {
@@ -44,7 +44,9 @@ mkws.registerWidgetType('Facet', function() {
 
     var teamName = that.team.name();
     var acc = [];
-    acc.push('<div class="mkwsFacetTitle">' + mkws.M(caption) + '</div>');
+    var template = that.team.loadTemplate('facetTitle-' + caption, mkws.M(caption))
+    var title = template({ query: that.config.query });
+    acc.push('<div class="mkwsFacetTitle">' + title + '</div>');
     for (var i = 0; i < data.length && i < max; i++) {
       acc.push('<div class="mkwsTerm">');
       acc.push('<a href="#" ');
@@ -53,7 +55,7 @@ mkws.registerWidgetType('Facet', function() {
         // Special case: target selection
         acc.push('target_id='+data[i].id+' ');
         if (!that.team.targetFiltered(data[i].id)) {
-          action = 'mkws.limitTarget(\'' + teamName + '\', this.getAttribute(\'target_id\'),this.firstChild.nodeValue)';
+          action = 'mkws.limitTarget(\'' + teamName + '\', \'' + data[i].id + '\', this.firstChild.nodeValue)';
         }
       } else {
         action = 'mkws.limitQuery(\'' + teamName + '\', \'' + pzIndex + '\', this.firstChild.nodeValue)';
@@ -65,4 +67,6 @@ mkws.registerWidgetType('Facet', function() {
 
     that.node.html(acc.join(''));
   });
+
+  this.autosearch();
 });