+// return link to limit facet
+mkdru.addLimit = function (facet, limit) {
+ var newHash = $.deparam.fragment();
+ delete newHash['page'];
+ if ((typeof(newHash['limit_' + facet]) === 'undefined')
+ || !mkdru.facets[facet].multiLimit) {
+ newHash['limit_' + facet] = limit;
+ }
+ else {
+ newHash['limit_' + facet] += ';' + limit;
+ }
+ return $.param.fragment("#", newHash);
+};
+
+// return link to remove limit from facet
+mkdru.removeLimit = function (facet, limit) {
+ var newHash = $.deparam.fragment();
+ delete newHash['page'];
+ if (!newHash['limit_' + facet].indexOf(';')
+ || !mkdru.facets[facet].multiLimit) {
+ delete newHash['limit_' + facet];
+ }
+ else {
+ var limits = newHash['limit_' + facet].split(';');
+ for (var i = 0; i < limits.length; i++) {
+ if (limits[i] == limit) {
+ limits.splice(i, 1);
+ if (limits.length < 1)
+ delete newHash['limit_' + facet];
+ else
+ newHash['limit_' + facet] = limits.join(';');
+ break;
+ }
+ }
+ }
+ return $.param.fragment("#", newHash);
+};
+