X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-widget-termlists.js;h=fef616f71ae8e6991ce7416ffcbcdfdd0a60267a;hb=559b9b944ffc1c64191dcd6900200e2d0cdc9938;hp=715eff2ef2ea89872c258fd506b553e03e2f31ec;hpb=139d7f620e0fb02a7cb1136d3d9e7250bf4a30a5;p=mkws-moved-to-github.git diff --git a/src/mkws-widget-termlists.js b/src/mkws-widget-termlists.js index 715eff2..fef616f 100644 --- a/src/mkws-widget-termlists.js +++ b/src/mkws-widget-termlists.js @@ -39,32 +39,40 @@ mkws.registerWidgetType('Facet', function() { return '[Widget ' + that.team.name() + ':' + that.type + '(' + name + ')]'; }; + var t2 = that.team.loadTemplate('Facet-' + caption); + that.log("template for Facet-" + caption + " is " + !!t2); + if (!t2) { + that.log("no " + caption + "-specific template, falling back"); + t2 = that.team.loadTemplate('Facet'); + } + that.log("template for Facet is " + !!t2); + that.team.queue("termlists").subscribe(function(data) { data = data[name]; - var template = that.team.loadTemplate('facetTitle-' + caption, mkws.M(caption)) - var title = template({ query: that.config.query }); + var t1 = that.team.loadTemplate('facetTitle-' + caption, mkws.M(caption)) + var title = t1({ query: that.config.query }); var acc = []; acc.push('
', title, '
'); var teamName = that.team.name(); for (var i = 0; i < data.length && i < max; i++) { - var fn, datum; + var fn, field; // General case modifies the query; special case selects a target if (pzIndex) { - fn = 'limitQuery'; datum = pzIndex; + fn = 'limitQuery'; field = pzIndex; } else if (!that.team.targetFiltered(data[i].id)) { - fn = 'limitTarget'; datum = data[i].id; - } - - var action = ''; - if (fn) { - action = 'mkws.' + fn + '(\'' + teamName + '\', \'' + datum + '\', this.firstChild.nodeValue)'; + fn = 'limitTarget'; field = data[i].id; } - acc.push('
', - '', data[i].name, '', - '', data[i].freq, '', - '
'); + var s = t2({ + team: teamName, + fn: fn, + field: field, + term: data[i].name, + count: data[i].freq, + query: that.config.query + }); + acc.push('
', s, '
'); } that.node.html(acc.join(''));