return check_checkdigit( barcode );
}
-function checkout_permit(barcode, patron_id, num_of_open_async_checkout_requests) {
+function cancel_hold( hold ) {
+ sdump('D_CIRC_UTILS',arg_dump(arguments,{0:true}));
+ var result = user_request(
+ 'open-ils.circ',
+ 'open-ils.circ.hold.cancel',
+ [ mw.G.auth_ses[0], hold.id() ]
+ )[0];
+ sdump('D_CIRC_UTILS','result = ' + result + '\n');
+ return result;
+}
+
+function checkout_permit(barcode, patron_id, num_of_open_async_checkout_requests, f) {
sdump('D_CIRC_UTILS',arg_dump(arguments,{0:true,1:true,2:true}));
try {
var check = user_request(
'open-ils.circ',
'open-ils.circ.permit_checkout',
- [ mw.G.auth_ses[0], barcode, patron_id, num_of_open_async_checkout_requests ]
+ [ mw.G.auth_ses[0], barcode, patron_id, num_of_open_async_checkout_requests ],
+ f
)[0];
- sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
+ if (!f) sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
return check;
} catch(E) {
handle_error(E);
}
}
-function checkout_by_copy_barcode(barcode, patron_id) {
+function checkout_by_copy_barcode(barcode, patron_id, f) {
sdump('D_CIRC_UTILS',arg_dump(arguments,{0:true,1:true}));
try {
var check = user_request(
'open-ils.circ',
'open-ils.circ.checkout.barcode',
- [ mw.G.auth_ses[0], barcode, patron_id ]
+ [ mw.G.auth_ses[0], barcode, patron_id ],
+ f
)[0];
- sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
+ if (!f) sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
return check;
} catch(E) {
sdump('D_ERROR',E);
}
}
-function checkin_by_copy_barcode(barcode) {
+function checkin_by_copy_barcode(barcode, f) {
sdump('D_CIRC_UTILS',arg_dump(arguments,{0:true}));
try {
var check = user_request(
'open-ils.circ',
'open-ils.circ.checkin.barcode',
- [ mw.G.auth_ses[0], barcode ]
+ [ mw.G.auth_ses[0], barcode ],
+ f
)[0];
- sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
+ if (!f) sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
return check;
} catch(E) {
sdump('D_ERROR',E);
}
}
-function renew_by_circ_id(id) {
+function renew_by_circ_id(id, f) {
sdump('D_CIRC_UTILS',arg_dump(arguments,{0:true}));
try {
var check = user_request(
'open-ils.circ',
'open-ils.circ.renew',
- [ mw.G.auth_ses[0], id ]
+ [ mw.G.auth_ses[0], id ],
+ f
)[0];
- sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
+ if (!f) sdump('D_CIRC_UTILS','check = ' + js2JSON(check) + '\n');
return check;
} catch(E) {
sdump('D_ERROR',E);
function hold_cols() {
var cols = [
{
+ 'id' : 'request_time', 'label' : getString('ahr_request_time_label'), 'flex' : 0,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr',
+ 'fm_field_render' : '.request_time().toString().substr(0,10)'
+},
+{
+ 'id' : 'status', 'label' : getString('ahr_status_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.status()'
+},
+{
+ 'id' : 'hold_type', 'label' : getString('ahr_hold_type_label'), 'flex' : 0,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.hold_type()'
+},
+{
+ 'id' : 'pickup_lib', 'label' : getString('ahr_pickup_lib_label'), 'flex' : 1,
+ 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr',
+ 'fm_field_render' : 'mw.G.org_tree_hash[ $$.pickup_lib() ].name()'
+},
+{
+ 'id' : 'pickup_lib_shortname', 'label' : getString('ahr_pickup_lib_label'), 'flex' : 0,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr',
+ 'fm_field_render' : 'mw.G.org_tree_hash[ $$.pickup_lib() ].shortname()'
+},
+ {
+ 'id' : 'title', 'label' : getString('mvr_label_title'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mvr', 'fm_field_render' : '.title()'
+ },
+ {
+ 'id' : 'author', 'label' : getString('mvr_label_author'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : 'mvr', 'fm_field_render' : '.author()'
+ },
+{
'id' : 'capture_time', 'label' : getString('ahr_capture_time_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.capture_time()'
+ 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.capture_time()'
},
{
'id' : 'current_copy', 'label' : getString('ahr_current_copy_label'), 'flex' : 1,
},
{
'id' : 'email_notify', 'label' : getString('ahr_email_notify_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.email_notify()'
+ 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.email_notify()'
},
{
'id' : 'expire_time', 'label' : getString('ahr_expire_time_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.expire_time()'
+ 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.expire_time()'
},
{
'id' : 'fulfillment_time', 'label' : getString('ahr_fulfillment_time_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.fulfillment_time()'
-},
-{
- 'id' : 'hold_type', 'label' : getString('ahr_hold_type_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : false, 'fm_class' : 'ahr', 'fm_field_render' : '.hold_type()'
+ 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.fulfillment_time()'
},
{
'id' : 'holdable_formats', 'label' : getString('ahr_holdable_formats_label'), 'flex' : 1,
'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.id()'
},
{
- 'id' : 'ischanged', 'label' : getString('ahr_ischanged_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.ischanged()'
-},
-{
- 'id' : 'isdeleted', 'label' : getString('ahr_isdeleted_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.isdeleted()'
-},
-{
- 'id' : 'isnew', 'label' : getString('ahr_isnew_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.isnew()'
-},
-{
'id' : 'phone_notify', 'label' : getString('ahr_phone_notify_label'), 'flex' : 1,
'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.phone_notify()'
},
{
- 'id' : 'pickup_lib', 'label' : getString('ahr_pickup_lib_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.pickup_lib()'
-},
-{
'id' : 'prev_check_time', 'label' : getString('ahr_prev_check_time_label'), 'flex' : 1,
'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.prev_check_time()'
},
{
- 'id' : 'request_time', 'label' : getString('ahr_request_time_label'), 'flex' : 1,
- 'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.request_time()'
-},
-{
'id' : 'requestor', 'label' : getString('ahr_requestor_label'), 'flex' : 1,
'primary' : false, 'hidden' : true, 'fm_class' : 'ahr', 'fm_field_render' : '.requestor()'
},
function (treeitem) {
sdump('D_PATRON_DISPLAY','Firing flesh_patron_holds_function\n');
var record_id = treeitem.getAttribute('record_id');
- p.patron_holds.map_patron_holds_to_cols( p._patron.hold_requests()[ record_id ], treeitem );
+ var hold = p._patron.hold_requests()[ record_id ];
+ patron_get_hold_status(
+ hold,
+ function (request) {
+ var result = request.getResultObject();
+ hold.status( hold_status_as_text( result ) );
+ p.patron_holds.map_patron_holds_to_cols( hold, treeitem );
+ }
+ );
}
);
p.patron_holds.register_item_context_builder(
var patron_holds = get_list_from_tree_selection( p.patron_holds.paged_tree.tree );
sdump('D_PATRON_DISPLAY','patron_holds.length = ' + patron_holds.length + '\n');
+ /*** CANCEL HOLD ***/
+ var menuitem_ph_ce = p.patron_holds.paged_tree.w.document.createElement('menuitem');
+ p.patron_holds.paged_tree.popup.appendChild( menuitem_ph_ce );
+ menuitem_ph_ce.setAttribute('label',getString('circ.context_cancel_hold'));
+ menuitem_ph_ce.addEventListener(
+ 'command',
+ function (ev) {
+ sdump('D_PATRON_DISPLAY','Firing cancel hold context for patron_holds\n');
+ for (var i = 0; i < patron_holds.length; i++) {
+ sdump('D_PATRON_DISPLAY','Firing cancel edit context\n');
+ var record_id = patron_holds[i].getAttribute('record_id');
+ var hold = p._patron.hold_requests()[ record_id ];
+ cancel_hold( hold );
+ }
+ p.refresh();
+ },
+ false
+ );
+
+ /* separator */
+ var menuitem_ph_s = p.patron_holds.paged_tree.w.document.createElement('menuseparator');
+ p.patron_holds.paged_tree.popup.appendChild( menuitem_ph_s );
+
/*** COPY EDITOR ***/
- var menuitem_pi_ce = p.patron_holds.paged_tree.w.document.createElement('menuitem');
- p.patron_holds.paged_tree.popup.appendChild( menuitem_pi_ce );
- menuitem_pi_ce.setAttribute('label',getString('circ.context_edit'));
- menuitem_pi_ce.addEventListener(
+ var menuitem_ph_ce = p.patron_holds.paged_tree.w.document.createElement('menuitem');
+ p.patron_holds.paged_tree.popup.appendChild( menuitem_ph_ce );
+ menuitem_ph_ce.setAttribute('label',getString('circ.context_edit'));
+ menuitem_ph_ce.addEventListener(
'command',
function (ev) {
sdump('D_PATRON_DISPLAY','Firing copy editor context for patron_holds\n');
);
/*** OPAC ***/
- var menuitem_pi_o = p.patron_holds.paged_tree.w.document.createElement('menuitem');
- p.patron_holds.paged_tree.popup.appendChild( menuitem_pi_o );
- menuitem_pi_o.setAttribute('label',getString('circ.context_opac'));
- menuitem_pi_o.addEventListener(
+ var menuitem_ph_o = p.patron_holds.paged_tree.w.document.createElement('menuitem');
+ p.patron_holds.paged_tree.popup.appendChild( menuitem_ph_o );
+ menuitem_ph_o.setAttribute('label',getString('circ.context_opac'));
+ menuitem_ph_o.addEventListener(
'command',
function (ev) {
sdump('D_PATRON_DISPLAY','Firing opac context for patron_holds\n');
return p;
}
-function patron_holds_tree_map_patron_holds_to_cols(p, patron_holds, treeitem) {
+function patron_holds_tree_map_patron_holds_to_cols(p, patron_hold, treeitem) {
sdump('D_PATRON_HOLDS',arg_dump(arguments,{1:true}));
sdump('D_TRACE_ENTER',arg_dump(arguments));
- var cols = new Array();
- for (var i = 0; i < p.patron_holds_cols.length; i++) {
- var hash = p.patron_holds_cols[i];
- sdump('D_PATRON_HOLDS','Considering ' + js2JSON(hash) + '\n');
- var obj_string = 'patron_holds';
- switch( hash.fm_class ) {
- case 'acp' : obj_string = 'patron_holds.copy'; break;
- case 'circ' : obj_string = 'patron_holds.circ'; break;
- case 'mvr' : obj_string = 'patron_holds.record'; break;
- }
- var cmd = parse_render_string( obj_string, hash.fm_field_render );
- sdump('D_PATRON_HOLDS','cmd = ' + cmd + '\n');
- var col = '';
- try {
- col = eval( cmd );
- sdump('D_PATRON_HOLDS','eval = ' + col + '\n');
- } catch(E) {
- sdump('D_ERROR',js2JSON(E) + '\n');
- }
- cols.push( col );
+
+ var app; var method;
+ switch(patron_hold.hold_type()) {
+ case 'M': app = 'open-ils.search'; method = 'open-ils.search.biblio.metarecord.mods_slim.retrieve'; break;
+ default : app = 'open-ils.search'; method = 'open-ils.search.biblio.record.mods_slim.retrieve'; break;
}
- sdump('D_PATRON_HOLDS','cols = ' + js2JSON(cols) + '\n');
- p.paged_tree.map_cols_to_treeitem( cols, treeitem );
+
+ user_request(
+ app,
+ method,
+ [ patron_hold.target() ],
+ function (request) {
+ var mvr = request.getResultObject();
+ var cols = new Array();
+ for (var i = 0; i < p.patron_holds_cols.length; i++) {
+ var hash = p.patron_holds_cols[i];
+ sdump('D_PATRON_HOLDS','Considering ' + js2JSON(hash) + '\n');
+ var obj_string = 'patron_hold';
+ switch( hash.fm_class ) {
+ case 'mvr' : obj_string = 'mvr'; break;
+ }
+ var cmd = parse_render_string( obj_string, hash.fm_field_render );
+ sdump('D_PATRON_HOLDS','cmd = ' + cmd + '\n');
+ var col = '';
+ try {
+ col = eval( cmd );
+ sdump('D_PATRON_HOLDS','eval = ' + col + '\n');
+ } catch(E) {
+ sdump('D_ERROR',js2JSON(E) + '\n');
+ }
+ cols.push( col );
+ }
+ sdump('D_PATRON_HOLDS','cols = ' + js2JSON(cols) + '\n');
+ p.paged_tree.map_cols_to_treeitem( cols, treeitem );
+ }
+ );
sdump('D_TRACE_EXIT',arg_dump(arguments));
}
return function (request) {
/* Set new patron */
if (count == patron_select_async_count) {
+
p._patron = request.getResultObject();
- render_fm( p.w.document, { 'au' : p._patron } );
- p.retrieve_button.disabled = false;
+
+ patron_get_checkouts( p._patron, function(req) {
+
+ if (count == patron_select_async_count) {
+
+ p._patron.checkouts( req.getResultObject() );
+
+ patron_get_holds( p._patron, function(req) {
+
+ if (count == patron_select_async_count) {
+
+ p._patron.hold_requests( req.getResultObject() );
+
+ patron_get_bills( p._patron, function(req) {
+
+ if (count == patron_select_async_count) {
+
+ p._patron.bills = req.getResultObject();
+ render_fm(p.w.document,{'au':p._patron});
+ p.retrieve_button.disabled = false;
+ }
+ });
+ }
+ });
+ }
+ });
};
- }
+ };
}
p.search_results.register_patron_select_callback(
sdump('D_TRACE','Loading patron_utils.js\n');
function fake_patron() {
+ sdump('D_PATRON_UTILS',arg_dump(arguments));
var p = new au();
p.family_name( 'Retrieving' );
p.checkouts( [] );
return p;
}
+function hold_status_as_text( status ) {
+ sdump('D_PATRON_UTILS',arg_dump(arguments));
+ if (typeof(status) == 'object') status = status.status();
+ var text;
+ switch(status) {
+ case "1" : text = getString('holds_status_waiting_for_copy'); break;
+ case "2" : text = getString('holds_status_waiting_for_capture'); break;
+ case "3" : text = getString('holds_status_in_transit'); break;
+ case "4" : text = getString('holds_status_available'); break;
+ default : text = "Eh?"; break;
+ }
+ return text;
+}
+
function patron_get_full_name( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
var name = '';
return '???';
}
-function patron_get_bills( au ) {
+function patron_get_bills( au, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
try {
- au.bills = ( user_request( // FIXME: make bills a virtual field of au
+ var bills = user_request(
'open-ils.actor',
'open-ils.actor.user.transactions',
- [ mw.G.auth_ses[0], au.id() ]
- )[0] );
- sdump('D_PATRON_UTILS','bills = ' + js2JSON(au.bills) + '\n');
- return au.bills
+ [ mw.G.auth_ses[0], au.id() ],
+ f
+ )[0];
+
+ if (!f) {
+ sdump('D_PATRON_UTILS','bills = ' + js2JSON(bills) + '\n');
+ au.bills = bills; // FIXME: make bills a virtual field of au
+ return bills;
+ }
} catch(E) {
sdump('D_ERROR',js2JSON(E) + '\n');
return null;
function patron_get_bills_total( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
- if (! au.bills ) patron_get_bills( au );
- if (au.bills == null)
+ if (au.bills == null || au.bills == undefined)
return '???';
else {
var total = 0;
return '$' + au.credit_forward_balance();
}
-function patron_get_checkouts( au ) {
+function patron_get_checkouts( au, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
try {
- au.checkouts( user_request(
+ var checkouts = user_request(
'open-ils.circ',
'open-ils.circ.actor.user.checked_out',
- [ mw.G.auth_ses[0], au.id() ]
- )[0] );
- sdump('D_PATRON_UTILS','checkouts = ' + js2JSON(au.checkouts()) + '\n');
- return au.checkouts();
+ [ mw.G.auth_ses[0], au.id() ],
+ f
+ )[0];
+
+ if (!f) {
+ sdump('D_PATRON_UTILS','checkouts = ' + js2JSON(au.checkouts()) + '\n');
+ au.checkouts( checkouts );
+ return checkouts;
+ }
} catch(E) {
sdump('D_ERROR',js2JSON(E) + '\n');
return null;
function patron_get_checkouts_total( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
- if (! au.checkouts()) patron_get_checkouts( au );
if (au.checkouts() == null)
return '???';
else
return au.checkouts().length;
}
+// Need an API call or virtual field to determine this
function patron_get_checkouts_overdue_total( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
if (! au.checkouts()) patron_get_checkouts( au );
return total;
}
-function patron_get_holds( au ) {
+function patron_get_holds( au, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
try {
- au.hold_requests( user_request(
+ var hold_requests = user_request(
'open-ils.circ',
'open-ils.circ.holds.retrieve',
- [ mw.G.auth_ses[0], au.id() ]
- )[0] );
- sdump('D_PATRON_UTILS','holds = ' + js2JSON(au.hold_requests()) + '\n');
- return au.hold_requests();
+ [ mw.G.auth_ses[0], au.id() ],
+ f
+ )[0];
+
+ if (!f) {
+ sdump('D_PATRON_UTILS','holds = ' + js2JSON(au.hold_requests()) + '\n');
+ au.hold_requests( hold_requests );
+ return hold_requests;
+ }
} catch(E) {
sdump('D_ERROR',js2JSON(E) + '\n');
return null;
function patron_get_holds_total( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
- if (! au.hold_requests()) patron_get_holds( au );
if (au.hold_requests() == null)
return '???';
else
return au.hold_requests().length;
}
+function patron_get_hold_status( hold, f ) {
+ sdump('D_PATRON_UTILS',arg_dump(arguments));
+ try {
+ var status = user_request(
+ 'open-ils.circ',
+ 'open-ils.circ.hold.status.retrieve',
+ [ mw.G.auth_ses[0], hold.id() ],
+ f
+ )[0];
+
+ if (!f) {
+ sdump('D_PATRON_UTILS','status = ' + status + '\n');
+ hold.status( status );
+ return status;
+ }
+ } catch(E) {
+ sdump('D_ERROR',js2JSON(E) + '\n');
+ return null;
+ }
+}
+
function patron_get_holds_available_total( au ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
- if (! au.hold_requests()) patron_get_holds( au );
var total = 0;
if ( (au.hold_requests() != null) && (typeof(au.hold_requests()) == 'object') ) {
for (var i = 0; i < au.hold_requests().length; i++) {
au.ident_type() &&
mw.G.cit_hash &&
mw.G.cit_hash[ au.ident_type() ] &&
- mw.G.cit_hash[ au.ident_type() ].value &&
- mw.G.cit_hash[ au.ident_type() ].value()
+ mw.G.cit_hash[ au.ident_type() ].name &&
+ mw.G.cit_hash[ au.ident_type() ].name()
) {
- return mw.G.cit_hash[ au.ident_type() ].value();
+ return mw.G.cit_hash[ au.ident_type() ].name();
} else {
return null;
}
au.ident_type2() &&
mw.G.cit_hash &&
mw.G.cit_hash[ au.ident_type2() ] &&
- mw.G.cit_hash[ au.ident_type2() ].value &&
- mw.G.cit_hash[ au.ident_type2() ].value()
+ mw.G.cit_hash[ au.ident_type2() ].name &&
+ mw.G.cit_hash[ au.ident_type2() ].name()
) {
- return mw.G.cit_hash[ au.ident_type2() ].value();
+ return mw.G.cit_hash[ au.ident_type2() ].name();
} else {
return null;
}
function retrieve_patron_by_barcode( barcode, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
if (!barcode) return null;
- return retrieve_patron_by_method( barcode, 'open-ils.actor', 'open-ils.actor.user.fleshed.retrieve_by_barcode', f );
+ return user_request( 'open-ils.actor', 'open-ils.actor.user.fleshed.retrieve_by_barcode', [ mw.G.auth_ses[0], barcode ], f )[0];
}
function retrieve_patron_by_id( id, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
if (!id) return null;
- return retrieve_patron_by_method( id, 'open-ils.actor', 'open-ils.actor.user.fleshed.retrieve', f );
-}
-
-function retrieve_patron_by_method( id, app, method, f ) {
- sdump('D_PATRON_UTILS',arg_dump(arguments));
- if (!id) return null;
- if (f) {
- try {
- user_async_request(
- app,
- method,
- [ mw.G.auth_ses[0], id ],
- f
- );
- } catch(E) {
- sdump('D_ERROR',E);
- }
- } else {
- try {
- var au = user_request(
- app,
- method,
- [ mw.G.auth_ses[0], id ]
- )[0];
- return au;
- } catch(E) {
- sdump('D_ERROR',E);
- return null;
- }
- }
+ return user_request( 'open-ils.actor', 'open-ils.actor.user.fleshed.retrieve', [ mw.G.auth_ses[0], id ], f )[0];
}
-function save_patron( au ) {
+function save_patron( au, f ) {
sdump('D_PATRON_UTILS',arg_dump(arguments));
try {
var result = user_request(
'open-ils.actor',
'open-ils.actor.patron.update',
- [ mw.G.auth_ses[0], au ]
+ [ mw.G.auth_ses[0], au ],
+ f
)[0];
+ if (!f) sdump('D_PATRON_UTILS','result = ' + js2JSON(result) + '\n');
return result;
} catch(E) {
handle_error(E);
// These wrap Bill's RemoteRequest.js
-function user_request(app,name,params) {
- sdump('D_SES','=-=-=-=-= user_request("'+app+'","'+name+'",'+js2JSON(params)+')\n');
- var request = new RemoteRequest( app, name );
- for(var index in params) {
- request.addParam(params[index]);
+function user_request(app,name,params,f) {
+ if (f) {
+
+ user_async_request(app,name,params,f);
+ return [];
+
+ } else {
+ sdump('D_SES','=-=-=-=-= user_request("'+app+'","'+name+'",'+js2JSON(params)+')\n');
+ var request = new RemoteRequest( app, name );
+ for(var index in params) {
+ request.addParam(params[index]);
+ }
+ request.send(true);
+ var result = [];
+ result.push( request.getResultObject() );
+ sdump('D_SES_RESULT','=-=-= result = ' + js2JSON(result[0]) + '\n');
+ return result;
}
- request.send(true);
- var result = [];
- result.push( request.getResultObject() );
- //sdump('D_SES','=-=-= result = ' + js2JSON(result[0]) + '\n');
- return result;
}
function user_async_request(app,name,params,func) {
fieldmapper_label=FIELDMAPPER
retrieving.record=Retrieving...
+circ.context_cancel_hold=Cancel Hold
circ.context_checkin=Check In
circ.context_renew=Renew
circ.context_opac=Show Title in OPAC
mvr_label_title=Title
mvr_label_author=Author
+holds_status_waiting_for_copy=Waiting for available copy
+holds_status_waiting_for_capture=Copy found, waiting for capture
+holds_status_in_transit=In Transit
+holds_status_available=Available
+
+ahr_status_label=Status
ahr_capture_time_label=Capture Time
ahr_current_copy_label=Current Copy
ahr_email_notify_label=Email Notify
ahr_expire_time_label=Expire Time
ahr_fulfillment_time_label=Fulfillment Time
-ahr_hold_type_label=Hold Type
+ahr_hold_type_label=Type
ahr_holdable_formats_label=Holdable Formats
ahr_id_label=Id
ahr_ischanged_label=Ischanged