+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];
+ }
+ }
+};
+
+// populate state from current window's hash string
+mkdru.stateFromHash = function () {
+ mkdru.stateFromObject($.deparam.fragment());
+};
+
+// set current window's hash string from state
+mkdru.hashFromState = function () {
+ // only include non-default settings in the URL
+ var alteredState = {};
+ for (var key in mkdru.defaultState) {
+ if (mkdru.state[key] != mkdru.defaultState[key]) {
+ alteredState[key] = mkdru.state[key];
+ }
+ }
+ $.bbq.pushState(alteredState);
+};