From 12e75bf10f579a74e726287c6e3f94e494fe24fa Mon Sep 17 00:00:00 2001 From: Jason Etheridge Date: Tue, 5 Apr 2011 12:44:02 -0400 Subject: [PATCH] peer type menu, and some other buttons as we morph this toward being a CUD interface --- .../server/cat/add_multi_home_items.js | 34 ++++++++++++++++++++-- .../server/cat/add_multi_home_items.xul | 9 ++++-- 2 files changed, 39 insertions(+), 4 deletions(-) diff --git a/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.js b/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.js index a5290be67d..82b054d95a 100644 --- a/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.js +++ b/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.js @@ -1,4 +1,4 @@ -var list; var error; var net; var pcrud; var rows; var sound; +var data; var list; var error; var net; var pcrud; var rows; var sound; var commonStrings; var catStrings; @@ -25,11 +25,16 @@ function my_init() { JSAN.use('util.error'); error = new util.error(); JSAN.use('util.sound'); sound = new util.sound(); + JSAN.use('util.widgets'); + JSAN.use('util.functional'); JSAN.use('util.list'); + JSAN.use('OpenILS.data'); data = new OpenILS.data(); + data.stash_retrieve(); JSAN.use('util.network'); net = new util.network(); dojo.require('openils.PermaCrud'); pcrud = new openils.PermaCrud( { authtoken :ses() }); + init_menu(); init_list(); $('list_actions').appendChild( list.render_list_actions() ); list.set_list_actions(); @@ -46,6 +51,27 @@ function my_init() { } } +function init_menu() { + try { + var ml = util.widgets.make_menulist( + util.functional.map_list( + data.list.bpt.sort( function(a,b) { + if (a.name() < b.name()) return -1; + if (a.name() > b.name()) return 1; + return 0; + }), + function(obj) { + return [ obj.name(), obj.id() ]; + } + ) + ); + ml.setAttribute('id','bpt_menu'); + $('menu_placeholder').appendChild(ml); + } catch(E) { + alert('Error in add_multi_home_items.js, init_menu(): ' + E); + } +} + function init_list() { try { list = new util.list( 'list' ); @@ -131,10 +157,14 @@ function handle_submit() { if (robj.mvr.doc_id() != xul_param('docid')) { var new_bpbcm = new bpbcm(); new_bpbcm.isnew(1); - new_bpbcm.peer_type(1); + new_bpbcm.peer_type($('bpt_menu').value); new_bpbcm.peer_record(xul_param('docid')); new_bpbcm.target_copy(robj.copy.id()); pcrud.create(new_bpbcm, { + "onerror" : function(r) { + alert('here'); + alert(js2JSON(r)); + }, "oncomplete": function (r, objs) { try { var obj = objs[0]; diff --git a/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.xul b/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.xul index 1618aff241..b4d578db31 100644 --- a/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.xul +++ b/Open-ILS/xul/staff_client/server/cat/add_multi_home_items.xul @@ -33,9 +33,14 @@ -