+ var html = "";
+ for (var i = 0; i < data.xtargets.length && i < mkdru.sourceMax; i++ ) {
+ html += Drupal.theme('mkdruTerm', data.xtargets[i].name, data.xtargets[i].freq,
+ 'mkdru-facet-source', data.xtargets[i].id);
+ }
+ $('.mkdru-facet-sources').html(html);
+
+ html = "";
+ for (var i = 0; i < data.subject.length && i < mkdru.subjectMax; i++ ) {
+ html += Drupal.theme('mkdruTerm', data.subject[i].name, data.subject[i].freq,
+ 'mkdru-facet-subject', data.subject[i].id);
+ }
+ $('.mkdru-facet-subjects').html(html);
+
+ html = "";
+ for (var i = 0; i < data.author.length && i < mkdru.authorMax; i++ ) {
+ html += Drupal.theme('mkdruTerm', data.author[i].name, data.author[i].freq,
+ 'mkdru-facet-author', data.author[i].id);
+ }
+ $('.mkdru-facet-authors').html(html);
+
+ $('.mkdru-facet-source').bind('click', function (e) {
+ mkdru.limitTarget(this.getAttribute('target_id'), this.firstChild.nodeValue);
+ return false;
+ });
+
+ $('.mkdru-facet-subject').bind('click', function (e) {
+ mkdru.limitQuery('su', this.firstChild.nodeValue);
+ return false;
+ });
+
+ $('.mkdru-facet-author').bind('click', function (e) {
+ mkdru.limitQuery('au', this.firstChild.nodeValue);
+ return false;
+ });
+};
+
+mkdru.pz2ByTarget = function (data) {
+
+};
+
+mkdru.pz2Record = function (data) {
+ clearTimeout(mkdru.pz2.showTimer);
+ $('.mkdru-results').hide();
+ $('.mkdru-detail').html(Drupal.theme('mkdruDetail', data));
+ $('.mkdru-detail-back').bind('click', function () {$.bbq.removeState('recid');});
+ $('.mkdru-detail').show();
+ clearTimeout(mkdru.pz2.recordTimer);
+};
+
+
+
+// State and URL handling
+
+// populate state from an object and fill in the blanks with defaults
+mkdru.stateFromObject = function (obj) {
+ for (var key in mkdru.defaultState) {
+ if (typeof(obj[key]) != "undefined") {
+ mkdru.state[key] = obj[key];
+ }
+ else {
+ mkdru.state[key] = mkdru.defaultState[key];