Found out where the jQuery BBQ library is actually kept.
[mkdru-moved-to-drupal.org.git] / mkdru.client.js
index b0d8b7f..03f9507 100644 (file)
@@ -30,7 +30,7 @@ var mkdru = {
     perpage: 20,
     sort: 'relevance',
     filter: null,
-    query:null,
+    query:'',
     recid:null
   },
   state: {},
@@ -39,6 +39,9 @@ var mkdru = {
 
 
 
+// Wrapper for jQuery
+(function ($) {
+
 // So we can use jQuery BBQ with Drupal 6 and its 1.2.6 jQuery
 if (!$.isArray) $.isArray = function(obj) {
   return Object.prototype.toString.call(obj) === "[object Array]";
@@ -131,8 +134,8 @@ 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').html(Drupal.theme('mkdruDetail', data,
+                                       mkdru.hashAddDelOne(null, null, 'recid')));
   $('.mkdru-detail').show();
   clearTimeout(mkdru.pz2.recordTimer);
 };
@@ -191,9 +194,9 @@ mkdru.hashChange = function () {
   }
   // Other internal link
   else {
-    // need to run search again to limit targets
+    // may need to run search again to limit targets
     for (key in mkdru.state) {
-      if (key.substring(0,5) === 'limit') {
+      if (key.substring(0,5) === 'limit' && mkdru.state[key]) {
         mkdru.search();
         break;
       }
@@ -326,6 +329,7 @@ $(document).ready(function () {
   if (typeof(Drupal.settings.mkdru.query) !== "undefined") {
     mkdru.state.query = Drupal.settings.mkdru.query
   }
+  
   //not running against SP? init, otherwise authenticate
   if (mkdru.useSessions) {
     mkdru.pz2.init();
@@ -349,7 +353,7 @@ $(document).ready(function () {
     );
     authReq.get(params,
       function (data) {
-        var s = data.getElementsByTagName('status');          
+        var s = data.getElementsByTagName('status');
         if (s.length && Element_getTextContent(s[0]) == "OK") {
           mkdru.realm = data.getElementsByTagName('realm');
           mkdru.pz2Init();
@@ -360,15 +364,5 @@ $(document).ready(function () {
       }
     );
   }
-  //i'm not sure how this can work, does it assume the results set is active?
-  //what if no search has been executed?
-  //if (mkdru.state.recid) {
-  //  mkdru.pz2.record(mkdru.state.recid);
-  //}
-  //'mkdru.onInit/ deals with the following properly 
-  /// -- waiting for Pz2/SP to init first
-  //else if (mkdru.state.query) {
-  //  mkdru.search();
-  //}
 });
+})(jQuery);
\ No newline at end of file