var bib_brief = document.createElement('iframe'); x.appendChild(bib_brief);
bib_brief.setAttribute('flex',1);
bib_brief.setAttribute('src',urls.XUL_BIB_BRIEF);
- get_contentWindow(bib_brief).xulG = { 'docid' : g.ahr.target() };
+ get_contentWindow(bib_brief).xulG = { 'docid' : g.blob.mvr.doc_id() };
retrieve_notes(); render_notes();
function fetch_hold(id) {
try {
g.ahr_id = xulG.ahr_id;
- g.ahr = g.network.simple_request('FM_AHR_RETRIEVE',[ ses(), g.ahr_id ]);
- if (typeof g.ahr.ilsevent != 'undefined') { throw(g.ahr); }
- g.ahr = g.ahr[0];
+ g.blob = xulG.blob;
+ if (g.blob) {
+ g.ahr = xulG.blob.hold;
+ } else {
+ g.blob = g.network.simple_request('FM_AHR_BLOB_RETRIEVE',[ ses(), g.ahr_id ]);
+ if (typeof g.ahr.ilsevent != 'undefined') { throw(g.ahr); }
+ g.ahr = g.blob.hold;
+ }
} catch(E) {
alert('Error in hold_details.js, fetch_hold(): ' + E);
}
'map_row_to_columns' : circ.util.std_map_row_to_columns(),
'retrieve_row' : function(params) {
var row = params.row;
- try {
- switch(row.my.ahr.hold_type()) {
- case 'M' :
- row.my.mvr = g.network.request(
- api.MODS_SLIM_METARECORD_RETRIEVE.app,
- api.MODS_SLIM_METARECORD_RETRIEVE.method,
- [ row.my.ahr.target() ]
- );
- break;
- default:
- row.my.mvr = g.network.simple_request(
- 'MODS_SLIM_RECORD_RETRIEVE.authoritative',
- [ row.my.ahr.target() ]
- );
- if (row.my.ahr.current_copy()) {
- row.my.acp = g.network.simple_request( 'FM_ACP_RETRIEVE', [ row.my.ahr.current_copy() ]);
- }
- break;
- }
- } catch(E) {
- g.error.sdump('D_ERROR','retrieve_row: ' + E );
- }
if (typeof params.on_retrieve == 'function') {
params.on_retrieve(row);
}
'row' : {
'my' : {
'ahr' : g.ahr,
+ 'acp' : g.blob.copy,
+ 'acn' : g.blob.volume,
+ 'mvr' : g.blob.mvr,
+ 'blob' : g.blob
}
},
'no_auto_select' : true,
copy_id = row.my.acp.id();
}
- obj.holds_map[ row.my.ahr.id() ] = row.my.ahr;
+ obj.holds_map[ row.my.ahr.id() ] = blob;
params.row_node.setAttribute('retrieve_id',
js2JSON({
'copy_id':copy_id,
if (obj.retrieve_ids.length == 0) return;
var f = obj.browser.get_content();
xulG.ahr_id = obj.retrieve_ids[0].id;
+ xulG.blob = obj.holds_map[ xulG.ahr_id ];
xulG.patron_rendered_elsewhere = (obj.hold_interface_type == 'patron');
f.xulG = xulG;
f.fetch_and_render_all();
);
if (r == 0) {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.selection_depth( obj.data.hash.aout[selection].depth() ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
var robj = obj.network.simple_request('FM_AHR_UPDATE',[ ses(), hold ]);
var deny_edit_because_of_transit = false;
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
if (hold.status() == 3 /* In-Transit */) deny_edit_because_of_transit = true;
}
if (deny_edit_because_of_transit) {
);
if (r == 0) {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.pickup_lib( pickup_lib ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
var robj = obj.network.simple_request('FM_AHR_UPDATE',[ ses(), hold ]);
);
if (r == 0) {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.phone_notify( phone ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
var robj = obj.network.simple_request('FM_AHR_UPDATE',[ ses(), hold ]);
);
if (r == 0) {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.email_notify( email ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
var robj = obj.network.simple_request('FM_AHR_UPDATE',[ ses(), hold ]);
if (r == 0) {
var already_suspended = [];
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
if ( get_bool( hold.frozen() ) ) {
already_suspended.push( hold.id() );
continue;
if (r == 0) {
var already_activated = [];
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
if ( ! get_bool( hold.frozen() ) ) {
already_activated.push( hold.id() );
continue;
}
if (thaw_date || thaw_date == '') {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.frozen('t');
hold.thaw_date( thaw_date == '' ? null : util.date.formatted_date(thaw_date + ' 00:00:00','%{iso8601}') ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
}
if (expire_time || expire_time == '') {
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- var hold = obj.holds_map[ obj.retrieve_ids[i].id ];
+ var hold = obj.holds_map[ obj.retrieve_ids[i].id ].hold;
hold.expire_time( expire_time == '' ? null : util.date.formatted_date(expire_time + ' 00:00:00','%{iso8601}') ); hold.ischanged('1');
hold = obj.flatten_copy(hold);
var robj = obj.network.simple_request('FM_AHR_UPDATE',[ ses(), hold ]);
if (r == 0) {
var transits = [];
for (var i = 0; i < obj.retrieve_ids.length; i++) {
- if (obj.holds_map[ obj.retrieve_ids[i].id ].transit()) {
+ if (obj.holds_map[ obj.retrieve_ids[i].id ].hold.transit()) {
transits.push( obj.retrieve_ids[i].barcode );
}
var robj = obj.network.simple_request('FM_AHR_CANCEL',[ ses(), obj.retrieve_ids[i].id]);