var data; var list; var error; var net; var pcrud; var sound;
var rows = {};
+var bpbcm_barcode_map = {};
var commonStrings;
var catStrings;
list.set_list_actions();
populate_list();
$('submit').addEventListener('command', function() { handle_submit(true); }, false);
+ $('remove').addEventListener('command', function() { handle_remove(); }, false);
+ $('change').addEventListener('command', function() { handle_change(); }, false);
$('scanbox').addEventListener('keypress', handle_keypress, false);
default_focus();
list = new util.list( 'list' );
list.init(
{
+ 'retrieve_row' : function(params) {
+ if (params.row.my.bpbcm) {
+ params.row_node.setAttribute('retrieve_id',params.row.my.bpbcm.id());
+ }
+ params.on_retrieve(params.row);
+ return params.row;
+ },
'columns' : [
{
'id' : 'result',
function handle_req(req) {
try {
var robj = req.getResultObject();
+ row_params.row.my.result = 'Error';
if (typeof robj.ilsevent != 'undefined') {
row_params.row.my.result = robj.textcode;
} else {
rows[robj.copy.barcode()] = row_params;
+ if (row_params.row.my.bpbcm) {
+ bpbcm_barcode_map[ row_params.row.my.bpbcm.id() ] = robj.copy.barcode();
+ }
row_params.row.my.acp = robj.copy;
row_params.row.my.mvr = robj.mvr;
if (obj) {
row_params.row.my.result = 'Success';
row_params.row.my.bpbcm = obj;
+ bpbcm_barcode_map[ obj.id() ] = robj.copy.barcode();
} else {
row_params.row.my.result = 'Failed';
sound.bad();
alert('Error in manage_multi_home_items.js, populate_list(): ' + E);
}
}
+
+function handle_change() {
+ try {
+ var node_list = list.retrieve_selection();
+ var eligibles = [];
+ for (var i = 0; i < node_list.length; i++) {
+ if (node_list[i].hasAttribute('retrieve_id')) {
+ eligibles.push( node_list[i].getAttribute('retrieve_id') );
+ }
+ }
+ if (eligibles.length > 0) {
+ if (window.confirm(
+ eligibles.length == 1
+ ? 'Change peer type on 1 selected item to ' + data.hash.bpt[ $('bpt_menu').value ].name()
+ : 'Change peer type on ' + eligibles.length + ' selected items to '+ data.hash.bpt[ $('bpt_menu').value ].name())
+ ) {
+ var bpbcm_list = [];
+ for (var i = 0; i < eligibles.length; i++) {
+ var obj = rows[ bpbcm_barcode_map[ eligibles[i] ] ].row.my.bpbcm;
+ obj.ischanged(1);
+ obj.peer_type( $('bpt_menu').value );
+ bpbcm_list.push( obj );
+ }
+ pcrud.update(
+ bpbcm_list, {
+ 'async' : false,
+ 'onerror': function(r) {
+ dump('onerror: ' + r + '\n');
+ },
+ 'onresponse': function(r) {
+ dump('onresponse: ' + r + '\n');
+ },
+ 'oncomplete': function(r,objs) {
+ dump('oncomplete: ' + r + '\n');
+ for (var i = 0; i < objs.length; i++) {
+ var obj = objs[i];
+ alert('obj = ' + js2JSON(obj));
+ try {
+ rows[ bpbcm_barcode_map[ obj.id() ] ].row.my.bpbcm = obj;
+ rows[ bpbcm_barcode_map[ obj.id() ] ].row.my.result = 'Peer Type Updated';
+ list.refresh_row( rows[ bpbcm_barcode_map[ obj.id() ] ] );
+ } catch(E) {
+ alert('error in oncomplete: ' + E);
+ }
+ }
+ }
+ }
+ );
+ }
+ }
+
+ } catch(E) {
+ alert('Error in manage_multi_home_items.js, handle_change(): ' + E);
+ }
+}