From b9e521627ef42f10b2e9f90696ff3e05a526fcbf Mon Sep 17 00:00:00 2001 From: Jason Etheridge Date: Mon, 7 Mar 2011 06:21:57 -0500 Subject: [PATCH] stub out the callnumber class, prefix, and suffix columns --- .../staff_client/server/cat/volume_copy_creator.js | 75 ++++++++++++++++++---- .../server/locale/en-US/cat.properties | 3 + 2 files changed, 65 insertions(+), 13 deletions(-) diff --git a/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js b/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js index 2433f1e44c..1d8db501c7 100644 --- a/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js +++ b/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js @@ -1,4 +1,12 @@ const g_max_copies_that_can_be_added_at_a_time_per_volume = 999; +const rel_vert_pos_volume_count = 1; +const rel_vert_pos_call_number_classification = 2; +const rel_vert_pos_call_number_prefix = 3; +const rel_vert_pos_call_number = 4; +const rel_vert_pos_call_number_suffix = 5; +const rel_vert_pos_copy_count = 6; +const rel_vert_pos_barcode = 7; +const rel_vert_pos_part = 8; var g = {}; g.use_defaults = true; @@ -173,7 +181,7 @@ g.render_volume_count_entry = function(row,ou_id) { tb.select(); } tb.setAttribute('ou_id',ou_id); tb.setAttribute('size','3'); tb.setAttribute('cols','3'); - tb.setAttribute('rel_vert_pos','1'); + tb.setAttribute('rel_vert_pos',rel_vert_pos_volume_count); if ( (!g.copy_shortcut) && (!g.last_focus) ) { tb.focus(); g.last_focus = tb; } var node; function render_copy_count_entry(ev) { @@ -232,9 +240,18 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { var rows = grid.lastChild; var r = document.createElement('row'); rows.appendChild( r ); var x = document.createElement('label'); r.appendChild(x); + x.setAttribute('value', $("catStrings").getString('staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.classification')); + x.setAttribute('style','font-weight: bold'); + x = document.createElement('label'); r.appendChild(x); + x.setAttribute('value', $("catStrings").getString('staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.prefix')); + x.setAttribute('style','font-weight: bold'); + x = document.createElement('label'); r.appendChild(x); x.setAttribute('value', $("catStrings").getString('staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.call_nums')); x.setAttribute('style','font-weight: bold'); x = document.createElement('label'); r.appendChild(x); + x.setAttribute('value', $("catStrings").getString('staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.suffix')); + x.setAttribute('style','font-weight: bold'); + x = document.createElement('label'); r.appendChild(x); x.setAttribute('value',$("catStrings").getString('staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.num_of_copies')); x.setAttribute('style','font-weight: bold'); x = document.createElement('label'); r.appendChild(x); @@ -272,7 +289,7 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { function handle_change_call_number_column_textbox(ev) { var _call_number_column_textbox = ev.target; var _call_number_column_box = _call_number_column_textbox.parentNode; - var _number_of_copies_column_box = _call_number_column_box.nextSibling; + var _number_of_copies_column_box = _call_number_column_box.nextSibling.nextSibling; /* two over */ var _number_of_copies_column_textbox = _number_of_copies_column_box.firstChild; var _barcode_column_box = _number_of_copies_column_box.nextSibling; handle_change(_call_number_column_textbox,_number_of_copies_column_textbox,_barcode_column_box); @@ -281,7 +298,7 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { function handle_change_number_of_copies_column_textbox(ev) { var _number_of_copies_column_textbox = ev.target; var _number_of_copies_column_box = _number_of_copies_column_textbox.parentNode; - var _call_number_column_box = _number_of_copies_column_box.previousSibling; + var _call_number_column_box = _number_of_copies_column_box.previousSibling.previousSibling; /* two over */ var _call_number_column_textbox = _call_number_column_box.firstChild; var _barcode_column_box = _number_of_copies_column_box.nextSibling; handle_change(_call_number_column_textbox,_number_of_copies_column_textbox,_barcode_column_box); @@ -290,6 +307,18 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { for (var i = 0; i < count; i++) { var r = document.createElement('row'); rows.appendChild(r); + /**** CLASSIFICATION COLUMN ****/ + var classification_column_box = document.createElement('vbox'); + r.appendChild(classification_column_box); + var classification_column_menulist = document.createElement('menulist'); + classification_column_box.appendChild(classification_column_menulist); + + /**** PREFIX COLUMN ****/ + var prefix_column_box = document.createElement('vbox'); + r.appendChild(prefix_column_box); + var prefix_column_menulist = document.createElement('menulist'); + prefix_column_box.appendChild(prefix_column_menulist); + /**** CALLNUMBER COLUMN ****/ var call_number_column_box = document.createElement('vbox'); r.appendChild(call_number_column_box); @@ -300,16 +329,29 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { call_number_column_textbox.value = $('marc_cn').firstChild.value; call_number_column_textbox.select(); } - call_number_column_textbox.setAttribute('rel_vert_pos','2'); + call_number_column_textbox.setAttribute('rel_vert_pos',rel_vert_pos_call_number); call_number_column_textbox.setAttribute('ou_id',ou_id); util.widgets.apply_vertical_tab_on_enter_handler( call_number_column_textbox, - function() { handle_change_call_number_column_textbox({'target':call_number_column_textbox}); setTimeout(function(){util.widgets.vertical_tab(call_number_column_textbox);},0); } + function() { + handle_change_call_number_column_textbox({'target':call_number_column_textbox}); + setTimeout( + function(){ + util.widgets.vertical_tab(call_number_column_textbox); + },0 + ); + } ); call_number_column_textbox.addEventListener( 'change', handle_change_call_number_column_textbox, false); call_number_column_textbox.addEventListener( 'change', g.gather_copies_soon, false); call_number_column_textbox.addEventListener( 'focus', function(ev) { g.last_focus = ev.target; }, false ); + /**** SUFFIX COLUMN ****/ + var suffix_column_box = document.createElement('vbox'); + r.appendChild(suffix_column_box); + var suffix_column_menulist = document.createElement('menulist'); + suffix_column_box.appendChild(suffix_column_menulist); + /**** NUMBER OF COPIES COLUMN ****/ var number_of_copies_column_box = document.createElement('vbox'); r.appendChild(number_of_copies_column_box); @@ -321,11 +363,18 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { number_of_copies_column_textbox.select(); } number_of_copies_column_textbox.setAttribute('size','3'); number_of_copies_column_textbox.setAttribute('cols','3'); - number_of_copies_column_textbox.setAttribute('rel_vert_pos','3'); + number_of_copies_column_textbox.setAttribute('rel_vert_pos',rel_vert_pos_copy_count); number_of_copies_column_textbox.setAttribute('ou_id',ou_id); util.widgets.apply_vertical_tab_on_enter_handler( number_of_copies_column_textbox, - function() { handle_change_number_of_copies_column_textbox({'target':number_of_copies_column_textbox}); setTimeout(function(){util.widgets.vertical_tab(number_of_copies_column_textbox);},0); } + function() { + handle_change_number_of_copies_column_textbox({'target':number_of_copies_column_textbox}); + setTimeout( + function(){ + util.widgets.vertical_tab(number_of_copies_column_textbox); + },0 + ); + } ); number_of_copies_column_textbox.addEventListener( 'change', handle_change_number_of_copies_column_textbox, false); number_of_copies_column_textbox.addEventListener( 'change', g.gather_copies_soon, false); @@ -488,8 +537,8 @@ g.render_barcode_entry = function(node,callnumber,count,ou_id) { } tb.setAttribute('ou_id',ou_id); tb.setAttribute('callnumber',callnumber); - tb.setAttribute('rel_vert_pos','4'); - part_menu.firstChild.setAttribute('rel_vert_pos','5'); + tb.setAttribute('rel_vert_pos',rel_vert_pos_barcode); + part_menu.firstChild.setAttribute('rel_vert_pos',rel_vert_pos_part); if (!tb.value && g.org_label_existing_copy_map[ ou_id ]) { tb.value = g.org_label_existing_copy_map[ ou_id ][ callnumber ][i].barcode(); tb.setAttribute('acp_id', g.org_label_existing_copy_map[ ou_id ][ callnumber ][i].id()); @@ -534,7 +583,7 @@ g.render_barcode_entry = function(node,callnumber,count,ou_id) { g.generate_barcodes = function() { try { - var nodes = document.getElementsByAttribute('rel_vert_pos','4'); + var nodes = document.getElementsByAttribute('rel_vert_pos',rel_vert_pos_barcode); if (nodes.length < 1) { return; } var first_barcode = nodes[0].value; @@ -595,8 +644,8 @@ g.gather_copies = function() { var barcodes = []; for (var i = 0; i < nl.length; i++) { - if ( nl[i].getAttribute('rel_vert_pos') == 4 ) barcodes.push( nl[i] ); - if ( nl[i].getAttribute('rel_vert_pos') == 2 ) { + if ( nl[i].getAttribute('rel_vert_pos') == rel_vert_pos_barcode ) barcodes.push( nl[i] ); + if ( nl[i].getAttribute('rel_vert_pos') == rel_vert_pos_call_number ) { var ou_id = nl[i].getAttribute('ou_id'); var callnumber = nl[i].value; if (typeof volumes_hash[ou_id] == 'undefined') { volumes_hash[ou_id] = {} } @@ -830,7 +879,7 @@ g.list_callnumbers = function(doc_id, label_class) { function() { var nl = document.getElementsByTagName('textbox'); for (var i = 0; i < nl.length; i++) { - if (nl[i].getAttribute('rel_vert_pos')==2 + if (nl[i].getAttribute('rel_vert_pos')==rel_vert_pos_call_number && !nl[i].disabled) { nl[i].value = ml.value; diff --git a/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties b/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties index 5228b6dc67..061993b84d 100644 --- a/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties +++ b/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties @@ -406,7 +406,10 @@ staff.cat.volume_copy_creator.rebarcode.btn.accesskey=R staff.cat.volume_copy_creator.render_volume_count_entry.message=You may not add more than %1$s items at a time for a given volume in this interface. staff.cat.volume_copy_creator.render_volume_count_entry.title=Maximum items exceeded. staff.cat.volume_copy_creator.render_volume_count_entry.ok_label=Ok +staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.classification=Classification +staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.prefix=Prefix staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.call_nums=Call Numbers +staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.suffix=Suffix staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.num_of_copies=# of Copies staff.cat.volume_copy_creator.render_callnumber_copy_count_entry.barcodes_and_parts=Barcodes / Part Designation staff.cat.volume_copy_creator.render_barcode_entry.alert_message="%1$s" is an invalid barcode. -- 2.11.0