function(e) {
return function() {
JSAN.use('util.widgets'); JSAN.use('util.functional');
- var items = [ ['Choose a bucket...',''] ].concat(
+ var items = [ ['Choose a bucket...',''], ['Retrieve shared bucket...',-1] ].concat(
util.functional.map_list(
obj.network.simple_request(
'BUCKET_RETRIEVE_VIA_USER',
}
)
);
- g.error.sdump('D_TRACE','items = ' + js2JSON(items));
+ obj.error.sdump('D_TRACE','items = ' + js2JSON(items));
util.widgets.remove_children( e );
var ml = util.widgets.make_menulist(
items
function change_bucket(ev) {
var bucket_id = ev.target.value;
+ if (bucket_id < 0 ) {
+ bucket_id = window.prompt('Enter bucket number:');
+ ev.target.value = bucket_id;
+ ev.target.setAttribute('value',bucket_id);
+ }
if (!bucket_id) return;
var bucket = obj.network.simple_request(
'BUCKET_FLESH',
[ ses(), 'copy', bucket_id ]
);
+ if (typeof bucket.ilsevent != 'undefined') {
+ if (bucket.ilsevent == 1506 /* CONTAINER_NOT_FOUND */) {
+ alert('Could not find a bucket with ID = ' + bucket_id);
+ } else {
+ obj.error.standard_unexpected_error_alert('Error retrieving bucket. Did you use a valid bucket id?',bucket);
+ }
+ return;
+ }
+ try {
+ var x = document.getElementById('info_box');
+ x.setAttribute('hidden','false');
+ x = document.getElementById('bucket_number');
+ x.setAttribute('value',bucket.id());
+ x = document.getElementById('bucket_name');
+ x.setAttribute('value',bucket.name());
+ x = document.getElementById('bucket_owner');
+ var s = bucket.owner(); JSAN.use('patron.util');
+ if (s && typeof s != "object") s = patron.util.retrieve_fleshed_au_via_id(ses(),s);
+ x.setAttribute('value',s.card().barcode() + " @ " + obj.data.hash.aou[ s.home_ou() ].shortname());
+
+ } catch(E) {
+ alert(E);
+ }
var items = bucket.items() || [];
obj.list2.clear();
for (var i = 0; i < items.length; i++) {
}, false);
obj.controller.view.bucket_menulist = ml;
JSAN.use('util.widgets'); util.widgets.dispatch('change_bucket',ml);
+ document.getElementById('refresh').addEventListener( 'command', function() {
+ JSAN.use('util.widgets'); util.widgets.dispatch('change_bucket',ml);
+ }, false);
};
},
],
<groupbox flex="2">
<caption label="Bucket View" />
<hbox id="copy_buckets_top_ui" />
+ <hbox id="info_box"/>
<tree id="copies_in_bucket_list" flex="1" enableColumnDrag="true"/>
<hbox id="copy_buckets_bottom_ui" />
</groupbox>
<hbox id="copy_buckets_menulist_placeholder" />
<button command="copy_buckets_new_bucket" label="New Bucket"/>
<button command="copy_buckets_delete_bucket" label="Delete Bucket"/>
+ <button id="refresh" label="Refresh"/>
<spacer flex="1"/>
<button id="clip_button" command="sel_clip" label="Copy to Clipboard" disabled="true" />
<button command="copy_buckets_delete_item" label="Delete Selected" disabled="true" image="/xul/server/skin/media/images/icon_delete.gif"/>
<button command="copy_buckets_export" label="Add Selected" disabled="true" image="/xul/server/skin/media/images/up_arrow.gif"/>
</hbox>
+<hbox id="info_box" hidden="true" style="font-size: large;">
+ <label value="Bucket #"/>
+ <label id="bucket_number" style="color: blue; text-decoration: underline; -moz-user-focus: normal;" onclick="copy_to_clipboard(event)"/>
+ <label id="bucket_name" style="color: blue;"/>
+ <label value="Owner:"/>
+ <label id="bucket_owner" style="color: blue;"/>
+</hbox>
+
<hbox id="copy_buckets_bottom_ui">
<button id="copy_buckets_print" label="Print" command="cmd_copy_buckets_print" accesskey="P"/>
<spacer flex="1"/>
obj.error.standard_unexpected_error_alert('Could not retrieve your buckets.',buckets);
return;
}
- var items = [ ['Choose a bucket...',''] ].concat(
+ var items = [ ['Choose a bucket...',''], ['Retrieve shared bucket...',-1] ].concat(
util.functional.map_list(
util.functional.filter_list(
buckets.biblio,
}
)
);
- g.error.sdump('D_TRACE','items = ' + js2JSON(items));
+ obj.error.sdump('D_TRACE','items = ' + js2JSON(items));
util.widgets.remove_children( e );
var ml = util.widgets.make_menulist(
items
function change_bucket(ev) {
var bucket_id = ev.target.value;
+ if (bucket_id < 0 ) {
+ bucket_id = window.prompt('Enter bucket number:');
+ ev.target.value = bucket_id;
+ ev.target.setAttribute('value',bucket_id);
+ }
if (!bucket_id) return;
var bucket = obj.network.simple_request(
'BUCKET_FLESH',
[ ses(), 'biblio', bucket_id ]
);
+ if (typeof bucket.ilsevent != 'undefined') {
+ if (bucket.ilsevent == 1506 /* CONTAINER_NOT_FOUND */) {
+ alert('Could not find a bucket with ID = ' + bucket_id);
+ } else {
+ obj.error.standard_unexpected_error_alert('Error retrieving bucket. Did you use a valid bucket id?',bucket);
+ }
+ return;
+ }
+ try {
+ var x = document.getElementById('info_box');
+ x.setAttribute('hidden','false');
+ x = document.getElementById('bucket_number');
+ x.setAttribute('value',bucket.id());
+ x = document.getElementById('bucket_name');
+ x.setAttribute('value',bucket.name());
+ x = document.getElementById('bucket_owner');
+ var s = bucket.owner(); JSAN.use('patron.util');
+ if (s && typeof s != "object") s = patron.util.retrieve_fleshed_au_via_id(ses(),s);
+ x.setAttribute('value',s.card().barcode() + " @ " + obj.data.hash.aou[ s.home_ou() ].shortname());
+ } catch(E) {
+ alert(E);
+ }
var items = bucket.items() || [];
obj.list2.clear();
for (var i = 0; i < items.length; i++) {
}, false);
obj.controller.view.bucket_menulist = ml;
JSAN.use('util.widgets'); util.widgets.dispatch('change_bucket',ml);
+ document.getElementById('refresh').addEventListener( 'command', function() {
+ JSAN.use('util.widgets'); util.widgets.dispatch('change_bucket',ml);
+ }, false);
};
},
],
<groupbox flex="2">
<caption label="Bucket View" />
<hbox id="record_buckets_top_ui" />
+ <hbox id="info_box" />
<tree id="records_in_bucket_list" flex="1" enableColumnDrag="true"/>
<hbox id="record_buckets_bottom_ui" />
</groupbox>
<hbox id="record_buckets_menulist_placeholder" />
<button id="record_buckets_new_bucket" label="New Bucket"/>
<button id="record_buckets_delete_bucket" label="Delete Bucket"/>
+ <button id="refresh" label="Refresh"/>
<spacer flex="1"/>
<button id="clip_button" command="sel_clip" label="Copy to Clipboard" disabled="true" />
<button id="record_buckets_delete_item" label="Delete Selected" disabled="true" image="/xul/server/skin/media/images/icon_delete.gif"/>
<button id="record_buckets_export" label="Add Selected" disabled="true" image="/xul/server/skin/media/images/up_arrow.gif"/>
</hbox>
+<hbox id="info_box" hidden="true" style="font-size: large;">
+ <label value="Bucket #"/>
+ <label id="bucket_number" style="color: blue; text-decoration: underline; -moz-user-focus: normal;" onclick="copy_to_clipboard(event)"/>
+ <label id="bucket_name" style="color: blue;"/>
+ <label value="Owner:"/>
+ <label id="bucket_owner" style="color: blue;"/>
+</hbox>
+
<hbox id="record_buckets_bottom_ui">
<spacer flex="1"/>
<hbox style="background: grey">