From adab035d5ffe86417a24a49c89681419489909a6 Mon Sep 17 00:00:00 2001
From: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Date: Tue, 28 Jun 2011 15:28:40 -0400
Subject: [PATCH] Closer to being able to get authority control set from
 thesaurus code

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
---
 .../web/js/dojo/openils/AuthorityControlSet.js     | 23 +++++++++++++++++-----
 Open-ILS/web/opac/skin/default/js/authbrowse.js    |  2 --
 .../web/opac/skin/default/xml/common/js_common.xml |  2 +-
 3 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/Open-ILS/web/js/dojo/openils/AuthorityControlSet.js b/Open-ILS/web/js/dojo/openils/AuthorityControlSet.js
index 9284094e2d..3583d66d3b 100644
--- a/Open-ILS/web/js/dojo/openils/AuthorityControlSet.js
+++ b/Open-ILS/web/js/dojo/openils/AuthorityControlSet.js
@@ -162,8 +162,23 @@ if(!dojo._hasResource["openils.AuthorityControlSet"]) {
             }
         },
 
-        _preFetchWithFielder: function(map) {
-            // TODO get pkeys from fieldmapper but use fielder to get everything
+        _preFetchWithFielder: function(cmap) {
+            for (var hint in cmap) {
+                var cache_key = cmap[hint];
+                var method = "open-ils.fielder." + hint + ".atomic";
+                var pkey = fieldmapper.IDL.fmclasses[hint].pkey;
+
+                var query = {};
+                query[pkey] = {"!=": null};
+
+                openils.AuthorityControlSet[cache_key] = dojo.map(
+                    fieldmapper.standardRequest(
+                        ["open-ils.fielder", method],
+                        [{"cache": 1, "query" : query}]
+                    ),
+                    function(h) { return new fieldmapper[hint]().fromHash(h); }
+                );
+            }
         },
 
         controlSetId: function (x) {
@@ -176,14 +191,12 @@ if(!dojo._hasResource["openils.AuthorityControlSet"]) {
         },
 
         controlSetByThesaurusCode: function (x) {
-            console.log("1");
             var thes = dojo.filter(
                 openils.AuthorityControlSet._thesaurus_list,
                 function (at) { return at.code() == x }
             )[0];
-            console.log("2");
 
-            return this.controlSet(thes.controlSet());
+            return this.controlSet(thes.control_set());
         },
 
         bibFieldByTag: function (x) {
diff --git a/Open-ILS/web/opac/skin/default/js/authbrowse.js b/Open-ILS/web/opac/skin/default/js/authbrowse.js
index 3aa8f2fb36..5fcb5ecf68 100644
--- a/Open-ILS/web/opac/skin/default/js/authbrowse.js
+++ b/Open-ILS/web/opac/skin/default/js/authbrowse.js
@@ -42,9 +42,7 @@ function displayAuthorityRecords(doc) {
         function(record) {
             console.log("record");
             var m = new MARC.Record({"xml": record});
-            console.log("got m");
             var s = m.extractFixedField("Subj");
-            console.log("got s");
             var cs = acs_helper.controlSetByThesaurusCode(s);
             console.log("got cs");
             dojo.create(
diff --git a/Open-ILS/web/opac/skin/default/xml/common/js_common.xml b/Open-ILS/web/opac/skin/default/xml/common/js_common.xml
index 498e5df7ee..4fc46053a2 100644
--- a/Open-ILS/web/opac/skin/default/xml/common/js_common.xml
+++ b/Open-ILS/web/opac/skin/default/xml/common/js_common.xml
@@ -5,7 +5,7 @@
     type='text/javascript'></script>
 <!--#else-->
 <script language='javascript'  
-    src='/IDL2js?mvr,bre,aou,aout,pgt,lasso,cmf,cmc,cmsa,cam,cifm,clfm,citm,cblvl,ccs,aba'
+    src='/IDL2js?mvr,bre,aou,aout,pgt,lasso,cmf,cmc,cmsa,cam,cifm,clfm,citm,cblvl,ccs,aba,acs,at,abaafm,acsaf,acsbf'
     type='text/javascript'></script>
 <!--#endif-->
 
-- 
2.11.0