X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmkws-filter.js;h=22669939aab1c0dfe929f75b3fe8ce36fe8794ac;hb=01375c84c73c19d498e021d72cd0f8f00e42a720;hp=e356217bcc4e2bd866a412105c77398513124904;hpb=8c494334ac3bd48e7e3c7fe34e5d508cc2e828f5;p=mkws-moved-to-github.git diff --git a/src/mkws-filter.js b/src/mkws-filter.js index e356217..2266993 100644 --- a/src/mkws-filter.js +++ b/src/mkws-filter.js @@ -31,6 +31,15 @@ function filterSet(team) { } }; + that.visitCategories = function(callback) { + for (var i in m_list) { + var filter = m_list[i]; + if (filter.type === 'category') { + callback(filter.id); + } + } + }; + that.removeMatching = function(matchFn) { var newList = []; for (var i in m_list) { @@ -81,6 +90,16 @@ function filterSet(team) { return res; } + that.pp2catLimit = function() { + var res = ""; + + that.visitCategories(function(id) { + if (res) res += ","; + res += "category~" + id.replace(/[\\|,]/g, '\\$&'); + }); + return res; + } + return that; } @@ -92,8 +111,6 @@ function targetFilter(id, name) { id: id, name: name }; - - return res; } function fieldFilter(field, value) { @@ -103,3 +120,10 @@ function fieldFilter(field, value) { value: value }; } + +function categoryFilter(id) { + return { + type: 'category', + id: id, + }; +}