+// criteria drop-down (perpage, sort) handler
+mkdru.submitCriteria = function () {
+ mkdru.pollDropDowns();
+ //search is not ON, do nothing
+ if (!mkdru.active) return false;
+ // pages mean different things now
+ mkdru.state.page = 1;
+ mkdru.hashFromState();
+ mkdru.pz2.show(0, mkdru.state.perpage, mkdru.state.sort);
+ return false;
+}
+
+mkdru.search = function () {
+ var filter = null;
+ var query = mkdru.state.query;
+
+ // facet limit implementation
+ for (var facet in mkdru.facets) {
+ // facet is limited
+ if (mkdru.state['limit_' + facet]) {
+ if (facet == "source") {
+ filter = 'pz:id=' + mkdru.state.limit_source;
+ }
+ else {
+ var limits = mkdru.state['limit_' + facet].split(';');
+ for (var i = 0; i < limits.length; i++) {
+ // ex. query + and au="{limit_author}"
+ query += ' and ' + mkdru.facets[facet]['limiter'] + '="'
+ + mkdru.state['limit_' + facet] + '"';
+ }
+ }
+ }
+ }
+
+ mkdru.pz2.search(query, mkdru.state.perpage, mkdru.state.sort, filter);
+ mkdru.active = true;