Force state update when query comes from ting
[mkdru-moved-to-drupal.org.git] / mkdru.client.js
index c73e875..9365e78 100644 (file)
@@ -8,21 +8,28 @@ var mkdru = {
   totalRec: 0,
   pagerRange: 6,
   pazpar2Path: Drupal.settings.mkdru.pz2_path,
+  facetContainerSelector: Drupal.settings.mkdru.facetContainerSelector,
   // Facets
   facets: {
     source: {
+      displayName: Drupal.settings.mkdru.source_dname || "Source",
+      orderWeight: Drupal.settings.mkdru.source_weight || 1,
       pz2Name: 'xtargets',
-      max: Drupal.settings.mkdru.source_max
+      max: Drupal.settings.mkdru.source_max || 10
     },
     subject: {
+      displayName: Drupal.settings.mkdru.subject_dname || "Subject",
+      orderWeight: Drupal.settings.mkdru.source_weight || 2,
       pz2Name: 'subject',
-      max: Drupal.settings.mkdru.subject_max,
+      max: Drupal.settings.mkdru.subject_max || 10,
       multiLimit: true,
       limiter: 'su'
     },
     author: {
+      displayName: Drupal.settings.mkdru.author_dname || "Author",
+      orderWeight: Drupal.settings.mkdru.source_weight || 3,
       pz2Name: 'author',
-      max: Drupal.settings.mkdru.author_max,
+      max: Drupal.settings.mkdru.author_max || 10,
       multiLimit: false,
       limiter: 'au'
     }
@@ -116,6 +123,11 @@ mkdru.pz2Status = function (data) {
 };
 
 mkdru.pz2Term = function (data) {
+  // if signaled, prepare container client-side
+  if (mkdru.facetContainerSelector) {
+    $(mkdru.facetContainerSelector).html(Drupal.theme('mkdruFacetContainer',
+      data, mkdru.facets));
+  }
   for (var facet in mkdru.facets) {
     // facet is limited
     if (mkdru.state['limit_' + facet]) {
@@ -372,6 +384,8 @@ $(document).ready(function () {
   // ting thing
   if (typeof(Drupal.settings.mkdru.query) !== "undefined") {
     mkdru.state.query = Drupal.settings.mkdru.query
+    //force the hash to contain query
+    mkdru.hashFromState();
   }
 
   //not running against SP? init, otherwise authenticate
@@ -409,4 +423,4 @@ $(document).ready(function () {
     );
   }
 });
-})(jQuery);
\ No newline at end of file
+})(jQuery);