putting show last few circs and show item summary actions in places
authorpines <pines@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 11 Aug 2006 03:13:50 +0000 (03:13 +0000)
committerpines <pines@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 11 Aug 2006 03:13:50 +0000 (03:13 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@5452 dcc99617-32d9-48b4-a31d-7c20da2025e4

14 files changed:
Open-ILS/xul/staff_client/server/cat/copy_browser.js
Open-ILS/xul/staff_client/server/cat/copy_browser.xul
Open-ILS/xul/staff_client/server/circ/checkin.js
Open-ILS/xul/staff_client/server/circ/checkin.xul
Open-ILS/xul/staff_client/server/circ/checkin_overlay.xul
Open-ILS/xul/staff_client/server/circ/copy_status.js
Open-ILS/xul/staff_client/server/circ/copy_status.xul
Open-ILS/xul/staff_client/server/circ/util.js
Open-ILS/xul/staff_client/server/patron/holds.js
Open-ILS/xul/staff_client/server/patron/holds.xul
Open-ILS/xul/staff_client/server/patron/holds_overlay.xul
Open-ILS/xul/staff_client/server/patron/items.js
Open-ILS/xul/staff_client/server/patron/items.xul
Open-ILS/xul/staff_client/server/patron/items_overlay.xul

index ae20f55..516a638 100644 (file)
@@ -64,6 +64,54 @@ cat.copy_browser.prototype = {
                                                                obj.list.clear();
                                                        }
                                                ],
+                                               'sel_patron' : [
+                                                       ['command'],
+                                                       function() {
+                                                               JSAN.use('util.functional');
+
+                                                               var list = util.functional.filter_list(
+                                                                       obj.sel_list,
+                                                                       function (o) {
+                                                                               return o.split(/_/)[0] == 'acp';
+                                                                       }
+                                                               );
+
+                                                               list = util.functional.map_list(
+                                                                       list,
+                                                                       function (o) {
+                                                                               return { 'copy_id' : o.split(/_/)[1] };
+                                                                       }
+                                                               );
+                                                               
+                                                               JSAN.use('circ.util');
+                                                               circ.util.show_last_few_circs(list);
+                                                       }
+                                               ],
+                                               'sel_copy_details' : [
+                                                       ['command'],
+                                                       function() {
+                                                               JSAN.use('util.functional');
+
+                                                               var list = util.functional.filter_list(
+                                                                       obj.sel_list,
+                                                                       function (o) {
+                                                                               return o.split(/_/)[0] == 'acp';
+                                                                       }
+                                                               );
+
+                                                               list = util.functional.map_list(
+                                                                       list,
+                                                                       function (o) {
+                                                                               return o.split(/_/)[1];
+                                                                       }
+                                                               );
+       
+                                                               JSAN.use('circ.util');
+                                                               for (var i = 0; i < list.length; i++) {
+                                                                       circ.util.show_copy_details( list[i] );
+                                                               }
+                                                       }
+                                               ],
                                                'cmd_add_items' : [
                                                        ['command'],
                                                        function() {
@@ -1291,6 +1339,8 @@ cat.copy_browser.prototype = {
                        obj.controller.view.cmd_mark_volume.setAttribute('disabled','true');
                        obj.controller.view.cmd_transfer_volume.setAttribute('disabled','true');
                        obj.controller.view.cmd_transfer_items.setAttribute('disabled','true');
+                       obj.controller.view.sel_copy_details.setAttribute('disabled','true');
+                       obj.controller.view.sel_patron.setAttribute('disabled','true');
                        if (found_aou) {
                                obj.controller.view.cmd_add_volumes.setAttribute('disabled','false');
                                obj.controller.view.cmd_mark_library.setAttribute('disabled','false');
@@ -1308,6 +1358,8 @@ cat.copy_browser.prototype = {
                                obj.controller.view.cmd_delete_items.setAttribute('disabled','false');
                                obj.controller.view.cmd_print_spine_labels.setAttribute('disabled','false');
                                obj.controller.view.cmd_transfer_items.setAttribute('disabled','false');
+                               obj.controller.view.sel_copy_details.setAttribute('disabled','false');
+                               obj.controller.view.sel_patron.setAttribute('disabled','false');
                        }
                } catch(E) {
                        obj.error.standard_unexpected_error_alert('Copy Browser Actions',E);
index 1c4a9b9..4570a7d 100644 (file)
@@ -64,6 +64,8 @@
 
        <commandset id="cat_copy_browser">
                <command id="cmd_broken" />
+               <command id="sel_copy_details"/>
+               <command id="sel_patron"/>
                <command id="sel_clip" />
                <command id="cmd_clear" />
                <command id="cmd_show_my_libs" />
                <popup id="copy_browser_actions">
                        <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C"/>
                                                        <menuseparator/>
-                       <menuitem command="cmd_add_items" label="Add Items" accesskey="I"/>
-                       <menuitem command="cmd_add_items_to_buckets" label="Add Items to Buckets" accesskey="A"/>
+                       <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
+                       <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
+                       <menuitem command="cmd_add_items" label="Add Items" accesskey="A"/>
+                       <menuitem command="cmd_add_items_to_buckets" label="Add Items to Buckets" accesskey="B"/>
                        <menuitem command="cmd_edit_items" label="Edit Item Attributes" accesskey="E"/>
                        <menuitem command="cmd_delete_items" label="Delete Items" accesskey=""/>
                        <menuitem command="cmd_transfer_items" label="Transfer Items to Previously Marked Volume" accesskey="T"/>
                                        <menupopup>
                                                        <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C"/>
                                                        <menuseparator/>
-                                                       <menuitem command="cmd_add_items" label="Add Items" accesskey="I"/>
-                                                       <menuitem command="cmd_add_items_to_buckets" label="Add Items to Buckets" accesskey="A"/>
+                                                       <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
+                                                       <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
+                                                       <menuitem command="cmd_add_items" label="Add Items" accesskey="A"/>
+                                                       <menuitem command="cmd_add_items_to_buckets" label="Add Items to Buckets" accesskey="B"/>
                                                        <menuitem command="cmd_edit_items" label="Edit Item Attributes" accesskey="E"/>
                                                        <menuitem command="cmd_delete_items" label="Delete Items" accesskey=""/>
                                                        <menuitem command="cmd_transfer_items" label="Transfer Items to Previously Marked Volume" accesskey="T"/>
index 100f7cf..4e13420 100644 (file)
@@ -49,6 +49,7 @@ circ.checkin.prototype = {
                                                        obj.controller.view.sel_edit.setAttribute('disabled','true');
                                                        obj.controller.view.sel_opac.setAttribute('disabled','true');
                                                        obj.controller.view.sel_patron.setAttribute('disabled','true');
+                                                       obj.controller.view.sel_copy_details.setAttribute('disabled','true');
                                                        obj.controller.view.sel_bucket.setAttribute('disabled','true');
                                                        obj.controller.view.sel_spine.setAttribute('disabled','true');
                                                        obj.controller.view.sel_transit_abort.setAttribute('disabled','true');
@@ -57,6 +58,7 @@ circ.checkin.prototype = {
                                                        obj.controller.view.sel_edit.setAttribute('disabled','false');
                                                        obj.controller.view.sel_opac.setAttribute('disabled','false');
                                                        obj.controller.view.sel_patron.setAttribute('disabled','false');
+                                                       obj.controller.view.sel_copy_details.setAttribute('disabled','false');
                                                        obj.controller.view.sel_bucket.setAttribute('disabled','false');
                                                        obj.controller.view.sel_spine.setAttribute('disabled','false');
                                                        obj.controller.view.sel_transit_abort.setAttribute('disabled','false');
@@ -116,6 +118,16 @@ circ.checkin.prototype = {
                                                        circ.util.show_last_few_circs(obj.selection_list);
                                                }
                                        ],
+                                       'sel_copy_details' : [
+                                               ['command'],
+                                               function() {
+                                                       JSAN.use('circ.util');
+                                                       for (var i = 0; i < obj.selection_list.length; i++) {
+                                                               circ.util.show_copy_details( obj.selection_list[i].copy_id );
+                                                       }
+                                               }
+                                       ],
+
                                        'sel_bucket' : [
                                                ['command'],
                                                function() {
index 2f9fa50..d81867a 100644 (file)
@@ -86,6 +86,7 @@
                <command id="sel_edit" disabled="true"/>
                <command id="sel_opac" disabled="true"/>
                <command id="sel_patron" disabled="true"/>
+               <command id="sel_copy_details" disabled="true"/>
                <command id="sel_bucket" disabled="true"/>
                <command id="sel_spine" disabled="true"/>
                <command id="sel_transit_abort" disabled="true"/>
index 72d7280..acd5530 100644 (file)
@@ -13,6 +13,7 @@
        <popup id="copy_status_actions" position="at_pointer"> 
                <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C" />
                <menuitem command="sel_opac" label="Show in Catalog" accesskey="S" />
+               <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
                <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
                <menuitem command="sel_edit" label="Edit Item Attributes" accesskey="E" />
                <menuitem command="sel_transit_abort" label="Abort Transits" />
@@ -57,6 +58,7 @@
                <menupopup>
                        <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C" />
                        <menuitem command="sel_opac" label="Show in Catalog" accesskey="S" />
+                       <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
                        <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
                        <menuitem command="sel_edit" label="Edit Item Attributes" accesskey="E" />
                        <menuitem command="sel_transit_abort" label="Abort Transits" />
index 84d9900..39dac47 100644 (file)
@@ -46,9 +46,9 @@ circ.copy_status.prototype = {
                                                        obj.controller.view.sel_checkin.setAttribute('disabled','true');
                                                        obj.controller.view.sel_edit.setAttribute('disabled','true');
                                                        obj.controller.view.sel_opac.setAttribute('disabled','true');
-                                                       obj.controller.view.sel_patron.setAttribute('disabled','true');
                                                        obj.controller.view.sel_bucket.setAttribute('disabled','true');
                                                        obj.controller.view.sel_copy_details.setAttribute('disabled','true');
+                                                       obj.controller.view.sel_patron.setAttribute('disabled','true');
                                                        obj.controller.view.sel_spine.setAttribute('disabled','true');
                                                        obj.controller.view.sel_transit_abort.setAttribute('disabled','true');
                                                        obj.controller.view.sel_clip.setAttribute('disabled','true');
index 46e7f83..bfb23d2 100644 (file)
                <command id="cmd_copy_status_reprint" />
                <command id="cmd_copy_status_done" />
                <command id="sel_copy_details" disabled="true"/>
+               <command id="sel_patron" disabled="true"/>
                <command id="sel_checkin" disabled="true"/>
                <command id="sel_edit" disabled="true"/>
                <command id="sel_opac" disabled="true"/>
-               <command id="sel_patron" disabled="true"/>
                <command id="sel_bucket" disabled="true"/>
                <command id="sel_spine" disabled="true"/>
                <command id="sel_transit_abort" disabled="true"/>
index e57a68b..a47c287 100644 (file)
@@ -74,6 +74,7 @@ circ.util.show_last_few_circs = function(selection_list,count) {
 
        for (var i = 0; i < selection_list.length; i++) {
                try {
+                       if (typeof selection_list[i].copy_id == 'undefined' || selection_list[i].copy_id == null) continue;
                        obj.data.fancy_prompt_data = null; obj.data.stash('fancy_prompt_data');
                        var url = xulG.url_prefix( urls.XUL_CIRC_SUMMARY ) + '?copy_id=' + selection_list[i].copy_id + '&count=' + count;
                        obj.win.open( url, 'show_last_few_circs', 'chrome,resizable,modal' );
index 74b449f..3b3f568 100644 (file)
@@ -103,6 +103,8 @@ patron.holds.prototype = {
                                                function(o) { return JSON2js( o.getAttribute('retrieve_id') ); }
                                        );
                                        if (obj.retrieve_ids.length > 0) {
+                                               obj.controller.view.sel_copy_details.setAttribute('disabled','false');
+                                               obj.controller.view.sel_patron.setAttribute('disabled','false');
                                                obj.controller.view.cmd_retrieve_patron.setAttribute('disabled','false');
                                                obj.controller.view.cmd_holds_edit_pickup_lib.setAttribute('disabled','false');
                                                obj.controller.view.cmd_holds_edit_phone_notify.setAttribute('disabled','false');
@@ -113,6 +115,8 @@ patron.holds.prototype = {
                                                obj.controller.view.cmd_holds_cancel.setAttribute('disabled','false');
                                                obj.controller.view.cmd_show_catalog.setAttribute('disabled','false');
                                        } else {
+                                               obj.controller.view.sel_copy_details.setAttribute('disabled','true');
+                                               obj.controller.view.sel_patron.setAttribute('disabled','true');
                                                obj.controller.view.cmd_retrieve_patron.setAttribute('disabled','true');
                                                obj.controller.view.cmd_holds_edit_pickup_lib.setAttribute('disabled','true');
                                                obj.controller.view.cmd_holds_edit_phone_notify.setAttribute('disabled','true');
@@ -140,6 +144,22 @@ patron.holds.prototype = {
                                                ['command'],
                                                function() { alert('Not Yet Implemented'); }
                                        ],
+                                       'sel_patron' : [
+                                               ['command'],
+                                               function() {
+                                                       JSAN.use('circ.util');
+                                                       circ.util.show_last_few_circs(obj.selection_list);
+                                               }
+                                       ],
+                                       'sel_copy_details' : [
+                                               ['command'],
+                                               function() {
+                                                       JSAN.use('circ.util');
+                                                       for (var i = 0; i < obj.selection_list.length; i++) {
+                                                               if (obj.selection_list[i].copy_id) circ.util.show_copy_details( obj.selection_list[i].copy_id );
+                                                       }
+                                               }
+                                       ],
                                        'cmd_holds_print' : [
                                                ['command'],
                                                function() {
@@ -530,7 +550,7 @@ patron.holds.prototype = {
                                obj.holds_map[ hold.id() ] = hold;
                                obj.list.append(
                                        {
-                                               'retrieve_id' : js2JSON({'id':hold.id(),'type':hold.hold_type(),'target':hold.target(),'usr':hold.usr(),}),
+                                               'retrieve_id' : js2JSON({'copy_id':hold.hold_type()=='C'?hold.target():null,'id':hold.id(),'type':hold.hold_type(),'target':hold.target(),'usr':hold.usr(),}),
                                                'row' : {
                                                        'my' : {
                                                                'ahr' : hold,
index 49a81c2..acd43f0 100644 (file)
@@ -65,6 +65,8 @@
        </script>
 
        <commandset id="holds_cmds">
+               <command id="sel_copy_details" disabled="true"/>
+               <command id="sel_patron" disabled="true"/>
                <command id="sel_clip" />
                <command id="cmd_holds_print" />
                <command id="cmd_show_catalog" />
index 9c4cbc3..2933726 100644 (file)
@@ -13,6 +13,8 @@
        <popup id="holds_actions" position="at_pointer"> 
                <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C" />
                <menuitem label="Show in Catalog" command="cmd_show_catalog" accesskey="S"/>
+               <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
+               <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
                <menuitem label="Retrieve Patron" command="cmd_retrieve_patron" accesskey="P"/>
                <menuitem label="Show Notices" command="cmd_show_notifications" accesskey="N" />
                <menuitem label="Edit Pickup Library" command="cmd_holds_edit_pickup_lib" accesskey="L"/>
@@ -52,6 +54,8 @@
                        <menupopup>
                                <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C" />
                                <menuitem label="Show in Catalog" command="cmd_show_catalog"  accesskey="S"/>
+                               <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
+                               <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
                                <menuitem label="Retrieve Patron" command="cmd_retrieve_patron" accesskey="P"/>
                                <menuitem label="Show Notices" command="cmd_show_notifications" accesskey="N" />
                                <menuitem label="Edit Pickup Library" command="cmd_holds_edit_pickup_lib" accesskey="L"/>
index 98f06fb..d4e40c3 100644 (file)
@@ -25,6 +25,21 @@ patron.items.prototype = {
                                        'cmd_broken' : [ ['command'], function() { alert('Not Yet Implemented'); } ],
                                        'sel_clip' : [ ['command'], function() { obj.list.clipboard(); } ],
                                        'sel_clip2' : [ ['command'], function() { obj.list2.clipboard(); } ],
+                                       'sel_patron' : [ ['command'], function() { JSAN.use('circ.util'); circ.util.show_last_few_circs(obj.selection_list); } ],
+                                       'sel_copy_details' : [ ['command'],
+                                               function() {
+                                                       JSAN.use('circ.util');
+                                                       for (var i = 0; i < obj.selection_list.length; i++) { circ.util.show_copy_details( obj.selection_list[i].copy_id ); }
+                                               }
+                                       ],
+                                       'sel_patron2' : [ ['command'], function() { JSAN.use('circ.util'); circ.util.show_last_few_circs(obj.selection_list2); } ],
+                                       'sel_copy_details2' : [ ['command'],
+                                               function() {
+                                                       JSAN.use('circ.util');
+                                                       for (var i = 0; i < obj.selection_list2.length; i++) { circ.util.show_copy_details( obj.selection_list2[i].copy_id ); }
+                                               }
+                                       ],
+
                                        'cmd_items_print' : [ ['command'], function() { obj.items_print(1); } ],
                                        'cmd_items_print2' : [ ['command'], function() { obj.items_print(2); } ],
                                        'cmd_items_renew' : [ ['command'], function() { obj.items_renew(1); } ],
@@ -51,6 +66,10 @@ patron.items.prototype = {
 
                obj.controller.view.sel_clip.setAttribute('disabled','true');
                obj.controller.view.sel_clip2.setAttribute('disabled','true');
+               obj.controller.view.sel_copy_details.setAttribute('disabled','true');
+               obj.controller.view.sel_patron.setAttribute('disabled','true');
+               obj.controller.view.sel_copy_details2.setAttribute('disabled','true');
+               obj.controller.view.sel_patron2.setAttribute('disabled','true');
                obj.controller.view.cmd_items_claimed_returned.setAttribute('disabled','true');
                obj.controller.view.cmd_items_renew.setAttribute('disabled','true');
                obj.controller.view.cmd_items_checkin.setAttribute('disabled','true');
@@ -512,12 +531,12 @@ patron.items.prototype = {
                                                        [ row.my.circ.target_copy() ]
                                                );
 
-                                               params.row_node.setAttribute( 'retrieve_id', js2JSON({'circ_id':row.my.circ.id(),'barcode':row.my.acp.barcode(),'doc_id': (typeof row.my.mvr.ilsevent == 'undefined' ? row.my.mvr.doc_id() : null )}) );
+                                               params.row_node.setAttribute( 'retrieve_id', js2JSON({'copy_id':row.my.circ.target_copy(),'circ_id':row.my.circ.id(),'barcode':row.my.acp.barcode(),'doc_id': (typeof row.my.mvr.ilsevent == 'undefined' ? row.my.mvr.doc_id() : null )}) );
 
                                        }
                                );
                        } else {
-                               params.row_node.setAttribute( 'retrieve_id', js2JSON({'circ_id':row.my.circ.id(),'barcode':row.my.acp.barcode(),'doc_id': ( typeof row.my.mvr.ilsevent == 'undefined' ? row.my.mvr.doc_id() : null) }) );
+                               params.row_node.setAttribute( 'retrieve_id', js2JSON({'copy_id':row.my.circ.target_copy(),'circ_id':row.my.circ.id(),'barcode':row.my.acp.barcode(),'doc_id': ( typeof row.my.mvr.ilsevent == 'undefined' ? row.my.mvr.doc_id() : null) }) );
                        }
 
                        funcs.push(
@@ -671,6 +690,8 @@ patron.items.prototype = {
                obj.controller.view.cmd_items_edit.setAttribute('disabled','false');
                obj.controller.view.cmd_items_mark_lost.setAttribute('disabled','false');
                obj.controller.view.cmd_show_catalog.setAttribute('disabled','false');
+               obj.controller.view.sel_copy_details.setAttribute('disabled','false');
+               obj.controller.view.sel_patron.setAttribute('disabled','false');
 
                obj.retrieve_ids = list;
        },
@@ -687,6 +708,8 @@ patron.items.prototype = {
                obj.controller.view.cmd_items_edit2.setAttribute('disabled','false');
                obj.controller.view.cmd_items_mark_lost2.setAttribute('disabled','false');
                obj.controller.view.cmd_show_catalog2.setAttribute('disabled','false');
+               obj.controller.view.sel_copy_details2.setAttribute('disabled','false');
+               obj.controller.view.sel_patron2.setAttribute('disabled','false');
 
                this.retrieve_ids2 = list;
        },
index a999798..9f6ef2b 100644 (file)
@@ -65,6 +65,8 @@
 
        <commandset id="items_cmds">
                <command id="sel_clip" />
+               <command id="sel_copy_details"/>
+               <command id="sel_patron"/>
                <command id="cmd_items_print" />
                <command id="cmd_items_renew" />
                <command id="cmd_items_renew_all" />
@@ -78,6 +80,8 @@
                <command id="cmd_show_noncats" />
 
                <command id="sel_clip2" />
+               <command id="sel_copy_details2"/>
+               <command id="sel_patron2"/>
                <command id="cmd_items_print2" />
                <command id="cmd_items_renew2" />
                <command id="cmd_items_claimed_returned2" />
index 76bbb7e..d4afebd 100644 (file)
@@ -13,6 +13,8 @@
        <popup id="items_actions" position="at_pointer"> 
                <menuitem command="sel_clip" label="Copy to Clipboard" accesskey="C" />
                <menuitem label="Show in Catalog" command="cmd_show_catalog" />
+               <menuitem command="sel_copy_details" label="Show Item Details" accesskey="I" />
+               <menuitem command="sel_patron" label="Show Last Few Circulations" accesskey="L"/>
                <menuitem label="Edit Due Date" command="cmd_items_edit" />
                <menuitem label="Mark Lost (by Patron)" command="cmd_items_mark_lost" />
                <menuitem label="Mark Claimed Returned" command="cmd_items_claimed_returned" />
@@ -24,6 +26,8 @@
        <popup id="items_actions2" position="at_pointer"> 
                <menuitem command="sel_clip2" label="Copy to Clipboard" accesskey="C" />
                <menuitem label="Show in Catalog" command="cmd_show_catalog2" />
+               <menuitem command="sel_copy_details2" label="Show Item Details" accesskey="I" />
+               <menuitem command="sel_patron2" label="Show Last Few Circulations" accesskey="L"/>
                <menuitem label="Edit Due Date" command="cmd_items_edit2" />
                <menuitem label="Mark Lost (by Patron)" command="cmd_items_mark_lost2" />
                <menuitem label="Mark Claimed Returned" command="cmd_items_claimed_returned2" />