dojo.require("dijit.form.Button");
dojo.require("dijit.form.FilteringSelect");
dojo.require("dojo.cookie");
+dojo.require("dojox.grid.Grid");
+dojo.require("dojo.data.ItemFileReadStore");
dojo.require("fieldmapper.Fieldmapper");
+dojo.require("fieldmapper.dojoData");
dojo.require('openils.CGI');
dojo.require('openils.User');
dojo.require('openils.Event');
var VANDELAY_URL = '/vandelay';
var bibAttrDefs = [];
var authAttrDefs = [];
+var queuedRecords = [];
/**
* Grab initial data
);
}
+function retrieveQueuedRecords(type, queueId, onload) {
+ fieldmapper.standardRequest(
+ ['open-ils.vandelay', 'open-ils.vandelay.'+type+'_queue.records.retrieve'],
+ { async: true,
+ params: [authtoken, queueId, {clear_marc:1}],
+ onresponse: function(r) {
+ var rec = r.recv().content();
+ if(e = openils.Event.parse(rec))
+ return alert(e);
+ queuedRecords.push(rec);
+ },
+ oncomplete: function(){onload();}
+ }
+ );
+}
+
+function buildRecordGrid(type) {
+ dojo.style(dojo.byId('vl-marc-upload-div'),"display","none");
+ dojo.style(dojo.byId('vl-queue-div'),"display","block");
+
+ /* test structure... */
+ var structure = [{
+ cells : [[
+ {name: 'ID', field: 'id'},
+ {name: 'Create Time', field: 'create_time'},
+ {name: 'Import Time', field: 'import_time'},
+ {name: 'Purpose', field: 'purpose'},
+ ]]
+ }];
+
+ vlQueueGrid.setStructure(structure);
+
+ var storeData;
+ if(type == 'bib')
+ storeData = vqbr.toStoreData(queuedRecords);
+ else
+ storeData = vqar.toStoreData(queuedRecords);
+
+ var store = new dojo.data.ItemFileReadStore({data:storeData});
+ var model = new dojox.grid.data.DojoData(
+ null, store, {rowsPerPage: 20, clientSort: true, query:{id:'*'}});
+ vlQueueGrid.setModel(model);
+ vlQueueGrid.update();
+}
+
/**
* Create queue, upload MARC, process spool, load the newly created queue
*/
var currentQueue = null;
+ var handleRetrieveRecords = function() {
+ alert("building record grid");
+ buildRecordGrid(recordType);
+ }
+
var handleProcessSpool = function() {
alert('records uploaded and spooled');
+ retrieveQueuedRecords(recordType, currentQueue.id(), handleRetrieveRecords);
}
var handleUploadMARC = function(key) {