X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-widgets.js;h=4df81d7bf67a7f1c59f9286b1870339e7ec7ac78;hb=571790bc7f30ce675dd09c2881247cb7f1aacf98;hp=39e081638fe4207a7d3bdfe522fe82b98ff8284a;hpb=0a8dda7361d33dc0b5c1267c4870c665f9e0993f;p=mkws-moved-to-github.git diff --git a/src/mkws-widgets.js b/src/mkws-widgets.js index 39e0816..4df81d7 100644 --- a/src/mkws-widgets.js +++ b/src/mkws-widgets.js @@ -2,7 +2,7 @@ function widget($, team, type, node) { // Static register of attributes that do not contribute to config var ignoreAttrs = { - id:1, class:1, style:1, name:1, action:1, type:1, size:1, + id:1, 'class':1, style:1, name:1, action:1, type:1, size:1, value:1, width:1, valign:1 }; @@ -257,8 +257,7 @@ mkws.registerWidgetType('Records', function() { } $(that.node).html(html.join('')); - function renderSummary(hit) - { + function renderSummary(hit) { var template = team.loadTemplate("Summary"); hit._id = team.recordElementId(hit.recid[0]); hit._onclick = "mkws.showDetails('" + team.name() + "', '" + hit.recid[0] + "');return false;" @@ -266,12 +265,16 @@ mkws.registerWidgetType('Records', function() { } }); - var node = $(that.node); - var query = node.attr('autosearch'); + mkws.maybeAutosearch(that); +}); + + +mkws.maybeAutosearch = function(that) { + var query = that.config.autosearch; if (query) { if (query.match(/^!param!/)) { var param = query.replace(/^!param!/, ''); - query = getParameterByName(param); + query = mkws.getParameterByName(param); that.log("obtained query '" + query + "' from param '" + param + "'"); if (!query) { alert("This page has a MasterKey widget that needs a query specified by the '" + param + "' parameter"); @@ -285,20 +288,25 @@ mkws.registerWidgetType('Records', function() { alert("This page has a MasterKey widget that needs a query specified by the path-component " + index); } } - that.log("node=" + node + ", class='" + node.className + "', query=" + query); - this.team.queue("ready").subscribe(function() { - var sortOrder = node.attr('sort'); - var targets = node.attr('targets'); + that.team.queue("ready").subscribe(function() { + var sortOrder = that.config.sort; + var perpage = that.config.perpage; + var limit = that.config.limit; + var targets = that.config.targets; + var targetfilter = that.config.targetfilter; var s = "running auto search: '" + query + "'"; if (sortOrder) s += " sorted by '" + sortOrder + "'"; + if (perpage) s += " with " + perpage + " per page"; + if (limit) s += " limited by '" + limit + "'"; if (targets) s += " in targets '" + targets + "'"; + if (targetfilter) s += " constrained by targetfilter '" + targetfilter + "'"; that.log(s); - that.team.newSearch(query, sortOrder, targets); + that.team.newSearch(query, sortOrder, perpage, limit, targets, targetfilter); }); } -}); +}; mkws.registerWidgetType('Navi', function() {