p.refresh = function() {
}
+ p.retrieve_button = p.w.document.getElementById('PatronSearch_retrieve_button');
+ p.retrieve_button.addEventListener(
+ 'command',
+ function (ev) {
+ spawn_patron_display(
+ p.w.app_shell,'new_tab','main_tabbox',
+ {
+ 'patron' : retrieve_patron_by_id(
+ p._patron.id()
+ )
+ }
+ );
+ }
+ ,false
+ );
+
+
sdump('D_TRACE_EXIT',arg_dump(arguments));
return p;
}
}
function checkin_checkin_items_init(p) {
- p.checkin_items = checkin_items_init( { 'w' : p.w, 'node' : p.checkin_items_node, 'popupset_node' : p.popupset_node, 'debug' : p.app } );
+ p.checkin_items = checkin_items_init( { 'w' : p.w, 'node' : p.checkin_items_node, 'debug' : p.app } );
var checkins = [];
var tb = p.checkin_items_node.getElementsByAttribute('id','checkin_barcode_entry_textbox')[0];
p.attempt_checkin = function(barcode) {
try {
- if (! is_barcode_valid(barcode) ) throw('Invalid Barcode');
- var permit_check = checkout_permit( barcode, p._patron.id(), 0 );
- if (permit_check.status == 0) {
- var check = checkout_by_barcode( barcode, p._patron.id() );
- if (check) {
- checkins.push( check );
- p.checkin_items.add_checkin_items( [ checkins.length - 1 ] );
- }
- } else {
- throw(permit_check.text);
+ //if (! is_barcode_valid(barcode) ) throw('Invalid Barcode');
+ var check = checkin_by_copy_barcode( barcode );
+ if (check) {
+ sdump('D_CHECKIN','check = ' + check + '\n' + pretty_print( js2JSON( check ) ) + '\n');
+ checkins.push( check );
+ p.checkin_items.add_checkin_items( [ checkins.length - 1 ] );
+ tb.value = ''; tb.focus();
}
} catch(E) {
handle_error(E);
<page id="checkin_win"
orient="vertical" style="overflow: auto" width="800" height="500"
sizemode="maximized" persist="width height"
- onload="params.w = window;
+ onload="try {
+ params.w = window;
params.app = 'Checkin';
params.clamshell_node = document.getElementById('ClamShell_main');
- params.patron_items_node = document.getElementById('PatronItems_main');
- params.patron_checkout_items_node = document.getElementById('PatronCheckoutItems_main');
+ params.checkin_items_node = document.getElementById('CheckinItems_main');
params.commandset_node = document.getElementById('universal_cmds');
- mw.focus_widget( document, 'PatronNavBar_refresh' );
- mw.OpenILS_init(params);"
+ mw.focus_widget( document, 'checkin_barcode_entry_textbox' );
+ mw.OpenILS_init(params);
+ } catch(E) {
+ alert(E);
+ }"
onunload="mw.OpenILS_exit(params);"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
sdump('D_CHECKIN_ITEMS',"TESTING: checkin_items.js: " + mw.G['main_test_variable'] + '\n');
sdump('D_CONSTRUCTOR',arg_dump(arguments));
- p.checkin_items_cols = circ_cols();
+ p.checkin_items_cols = checkin_cols();
p.paged_tree = paged_tree_init( { 'w' : p.w, 'node' : p.node, 'cols' : p.checkin_items_cols, 'hide_nav' : true, 'hits_per_page' : '9999', 'debug' : p.app } );
- p.add_checkout_items = p.paged_tree.add_rows;
- p.clear_checkout_items = p.paged_tree.clear_tree;
+ p.add_checkin_items = p.paged_tree.add_rows;
+ p.clear_checkin_items = p.paged_tree.clear_tree;
p.register_checkin_items_select_callback = function (f) {
sdump('D_CHECKIN_ITEMS','p.register_checkin_items_select_callback(' + f + ')\n');
for (var i = 0; i < p.checkin_items_cols.length; i++) {
var hash = p.checkin_items_cols[i];
sdump('D_CHECKIN_ITEMS','Considering ' + js2JSON(hash) + '\n');
- var obj_string;
+ var obj_string = 'checkin_items';
switch( hash.fm_class ) {
case 'acp' : obj_string = 'checkin_items.copy'; break;
case 'circ' : obj_string = 'checkin_items.circ'; break;
<script>mw.sdump('D_TRACE','Loading checkin_overlay.xul\n');</script>
+ <?xul-overlay href="chrome://evergreen/content/main/clam_shell_overlay.xul"?>
<?xul-overlay href="chrome://evergreen/content/circ/checkin_items_overlay.xul"?>
+ <?xul-overlay href="chrome://evergreen/content/patron/patron_display_status_overlay.xul"?>
<commandset id="universal_cmds">
</box>
<deck id="ClamShell_first_deck">
+ <box id="PatronDisplayStatus_main" />
+ <spacer id="csfds" flex="1" />
</deck>
<deck id="ClamShell_second_deck">
- <box id="CheckinItems_main"/>
+ <groupbox id="cssdgb">
+ <caption id="cssdgbc" label="&circ.checkin.caption;"/>
+ <box id="CheckinItems_main"/>
+ </groupbox>
</deck>
<hbox id="CheckinItems_insert1">
<label id="checkin_scan_barcode_label" value="&circ.checkin.scan_label;" accesskey="&circ.checkin.scan_label.accesskey;" control="checkin_scan_textbox"/>
<textbox id="checkin_barcode_entry_textbox"/>
- <button id="checkin_submit_barcode_button" value="&circ.checkin.submit_label;" accesskey="&circ.checkin.submit_label.accesskey;"/>
+ <button id="checkin_submit_barcode_button" label="&circ.checkin.submit_label;" accesskey="&circ.checkin.submit_label.accesskey;"/>
</hbox>
<hbox id="CheckinItems_insert2" />
<hbox id="CheckinItems_insert3" />
<hbox id="CheckinItems_insert4" />
+<hbox id="PatronDisplayStatus_insert2">
+ <label id="PatronSearch_patron_name" class="patronNameMedium"
+ tooltiptext="&checkin_patron.name.label;"
+ value=" "
+ render="true" fm_class="au"
+ render_value="patron_get_full_name($$)" />
+</hbox>
+<hbox id="PatronDisplayStatus_insert4">
+ <button id="PatronSearch_retrieve_button"
+ disabled="true"
+ label="&checkin_patron.retrieve;"
+ accesskey="&checkin_patron.retrieve.accesskey;"/>
+</hbox>
+
+<hbox id="CheckinItems_insert3">
+ <button id="checkin_print" label="&checkin.print_receipt_label;" accesskey="&checkin.print_receipt_label.accesskey;"/>
+ <button id="checkin_reprint" label="&checkin.reprint_receipt_label;" accesskey="&checkin.reprint_receipt_label.accesskey;"/>
+ <spacer id="cii3s" flex="1"/>
+ <checkbox id="checkin_auto" label="&checkin.auto_print_label;" accesskey="&checkin.auto_print_label.accesskey;"/>
+ <button id="checkin_done" label="&checkin.done_label;" accesskey="&checkin.done_label.accesskey;"/>
+</hbox>
+
<!-- Accelerator Keys (Accessor Keys are in DTD's) -->
<keyset id="Checkin_keys">
}
}
+function checkin_cols() {
+ var cols = [
+ {
+ 'id' : 'checkin_status', 'label' : getString('checkin_label_status'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : '', 'fm_field_render' : '.status.toString()'
+ },
+ {
+ 'id' : 'checkin_route_to', 'label' : getString('checkin_label_route_to'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : '', 'fm_field_render' : '.route_to.toString()'
+ },
+ {
+ 'id' : 'checkin_text', 'label' : getString('checkin_label_text'), 'flex' : 1,
+ 'primary' : false, 'hidden' : false, 'fm_class' : '', 'fm_field_render' : '.text.toString()'
+ }
+ ];
+ var std_cols = map_list(
+ circ_cols(),
+ function(o){ if ((o.fm_class == 'acp')||(o.fm_class == 'circ')) o.hidden = true; return o; }
+ );
+ return merge_arrays( cols, std_cols );
+}
+
function circ_cols() {
return [
{
mw.spawn_circ_display(document,'replace_tab','main_tabbox',{}); "/>
<command id="cmd_circ_checkin" oncommand="
- mw.spawn_check_in(document,'replace_tab','main_tabbox',{}); "/>
+ mw.spawn_checkin(document,'replace_tab','main_tabbox',{}); "/>
<command id="cmd_search_opac" oncommand="
mw.spawn_opac_navigator(document,'replace_tab','main_tabbox',{}); "/>
'D_PATRON_ITEMS' : false,
'D_PATRON_CHECKOUT_ITEMS' : false,
- 'D_CHECKIN' : false,
- 'D_CHECKIN_ITEMS' : false,
+ 'D_CHECKIN' : true,
+ 'D_CHECKIN_ITEMS' : true,
'D_PATRON_UTILS' : false,
'D_CIRC_UTILS' : false,
if ( !fm_class ) continue;
if ( obj[ fm_class ] ) {
sdump('D_FM_UTILS',"We're in:\n\trender_value = " + render_value + "\n\trender_css_style = " + render_css_style + "\n\trender_css_class = " + render_css_class + "\n");
- var result = '';
if (render_value) {
- var cmd = parse_render_string( 'obj[ fm_class ]', render_value );
- result = eval( cmd );
- sdump('D_FM_UTILS','<'+cmd+'> renders <'+result+'>\n');
+ var result = ''; var cmd = '';
+ cmd = parse_render_string( 'obj[ fm_class ]', render_value );
+ try { result = eval( cmd ); } catch(E) { sdump('D_ERROR',E); }
set_widget_value_for_display( node, result );
+ sdump('D_FM_UTILS','\t<'+cmd+'> renders <'+result+'>\n');
}
if (render_css_style) {
- var cmd = parse_render_string( 'obj[ fm_class ]', render_css_style );
+ var result = ''; var cmd = '';
+ cmd = parse_render_string( 'obj[ fm_class ]', render_css_style );
cmd = parse_render_string( 'result', cmd, /\%\%/g );
- var result = eval(cmd);
- sdump('D_FM_UTILS','\t<'+cmd+'> renders <'+result+'>\n');
+ try { result = eval(cmd); } catch(E) { sdump('D_ERROR',E); }
node.setAttribute('style',result);
+ sdump('D_FM_UTILS','\t<'+cmd+'> renders <'+result+'>\n');
}
if (render_css_class) {
- var cmd = parse_render_string( 'obj[ fm_class ]', render_css_class );
+ var result = ''; var cmd = '';
+ cmd = parse_render_string( 'obj[ fm_class ]', render_css_class );
cmd = cmd.replace( /\%\%/g, 'result' );
- var result = eval(cmd);
- sdump('D_FM_UTILS','\t<'+cmd+'> renders <'+result+'>\n');
+ try { result = eval(cmd); } catch(E) { sdump('D_ERROR',E); }
node.setAttribute('class',result);
+ sdump('D_FM_UTILS','\t<'+cmd+'> renders <'+result+'>\n');
}
}
}
circ.context_edit=Edit Copy
patron.context_display=Retrieve Patron
+checkin_label_status=Status
+checkin_label_route_to=Route To
+checkin_label_text=Message
+
au_label_id=Record ID
au_label_prefix=Prefix
au_label_family_name=Family Name
--- /dev/null
+<!ENTITY circ.checkin.caption 'Check In'>
+<!ENTITY circ.checkin.scan_label 'Enter barcode:'>
+<!ENTITY circ.checkin.scan_label.accesskey 'E'>
+<!ENTITY circ.checkin.submit_label 'Submit'>
+<!ENTITY circ.checkin.submit_label.accesskey 'S'>
+
+<!ENTITY checkin_patron.retrieve 'Retrieve Patron'>
+<!ENTITY checkin_patron.retrieve.accesskey 'R'>
+<!ENTITY checkin_patron.name.label 'Patron Name'>
+
+<!ENTITY checkin.print_receipt_label 'Print List'>
+<!ENTITY checkin.print_receipt_label.accesskey ''>
+<!ENTITY checkin.reprint_receipt_label 'Re-Print Last List'>
+<!ENTITY checkin.reprint_receipt_label.accesskey 'L'>
+<!ENTITY checkin.auto_print_label 'Auto-Print'>
+<!ENTITY checkin.auto_print_label.accesskey 'A'>
+<!ENTITY checkin.done_label 'Done'>
+<!ENTITY checkin.done_label.accesskey 'D'>
+
+