no more fancy prompt here
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 22 Jun 2006 19:04:51 +0000 (19:04 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 22 Jun 2006 19:04:51 +0000 (19:04 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@4714 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/server/circ/util.js

index 7f4bde6..10894e7 100644 (file)
@@ -34,70 +34,36 @@ circ.util.abort_transits = function(selection_list) {
 circ.util.show_last_few_circs = function(selection_list,count) {
        var obj = {};
        JSAN.use('util.error'); obj.error = new util.error();
+       JSAN.use('util.window'); obj.win = new util.window();
        JSAN.use('util.network'); obj.network = new util.network();
        JSAN.use('OpenILS.data'); obj.data = new OpenILS.data(); obj.data.init({'via':'stash'});
 
+       if (!count) count = 4;
+
        for (var i = 0; i < selection_list.length; i++) {
                try {
-                       var circs = obj.network.simple_request('FM_CIRC_RETRIEVE_VIA_COPY',
-                               [ ses(), selection_list[i].copy_id, count ]);
-                       if (circs == null || typeof circs.ilsevent != 'undefined') throw(circs);
-                       if (circs.length == 0) { alert('There are no circs for item with barcode ' + selection_list[i].barcode); continue; }
-                       netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserWrite');
-                       var top_xml = '<description xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" style="overflow: auto">';
-                       top_xml += 'These are the last ' + circs.length + ' circulations for item ';
-                       top_xml += selection_list[i].barcode + '</description>';
-
-                       var xml = '<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" style="overflow: vertical">';
-                       for (var j = 0; j < circs.length; j++) {
-                               xml += '<iframe style="min-height: 100px" flex="1" src="' + xulG.url_prefix( urls.XUL_CIRC_BRIEF );
-                               xml += '?circ_id=' + circs[j].id() + '"/>';
-                       }
-                       xml += '</vbox>';
-                       
-                       var bot_xml = '<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" style="overflow: auto"><hbox>';
-                       bot_xml += '<button id="retrieve_last" value="last" label="Retrieve Last Patron" accesskey="L" name="fancy_submit"/>';
-                       bot_xml += '<button id="retrieve_all" value="all" label="Retrieve All Patrons" accesskey="A" name="fancy_submit"/>';
-                       bot_xml += '<button label="Done" accesskey="D" name="fancy_cancel"/></hbox></vbox>';
-
-                       obj.data.temp_top = top_xml; obj.data.stash('temp_top');
-                       obj.data.temp_mid = xml; obj.data.stash('temp_mid');
-                       obj.data.temp_bot = bot_xml; obj.data.stash('temp_bot');
-                       window.open(
-                               urls.XUL_FANCY_PROMPT
-                               + '?xml_in_stash=temp_mid'
-                               + '&top_xml_in_stash=temp_top'
-                               + '&bottom_xml_in_stash=temp_bot'
-                               + '&title=' + window.escape('Brief Circulation History'),
-                               'fancy_prompt', 'chrome,resizable,modal,width=700,height=500'
-                       );
-                       JSAN.use('OpenILS.data');
-                       var data = new OpenILS.data(); data.init({'via':'stash'});
-                       if (data.fancy_prompt_data == '') { continue; }
-                       var patron_hash = {};
-                       for (var j = 0; j < (data.fancy_prompt_data.fancy_submit == 'all' ? circs.length : 1); j++) {
-                               if (typeof patron_hash[circs[j].usr()] != 'undefined') {
-                                       continue;
-                               } else {
-                                       patron_hash[circs[j].usr()] = true;
-                               }
+                       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' );
+                       obj.data.stash_retrieve();
+
+                       if (! obj.data.fancy_prompt_data) continue;
+                       var patrons = JSON2js( obj.data.fancy_prompt_data );
+                       for (var j = 0; j < patrons.length; j++) {
                                if (typeof window.xulG == 'object' && typeof window.xulG.new_tab == 'function') {
                                        try {
-                                               var url = urls.XUL_PATRON_DISPLAY 
-                                                       + '?id=' + window.escape( circs[j].usr() );
+                                               var url = urls.XUL_PATRON_DISPLAY + '?id=' + window.escape( patrons[j] );
                                                window.xulG.new_tab( url );
                                        } catch(E) {
                                                obj.error.standard_unexpected_error_alert('Problem retrieving patron.',E);
                                        }
                                }
-
                        }
 
                } catch(E) {
                        obj.error.standard_unexpected_error_alert('Problem retrieving circulations.',E);
                }
        }
-       //FM_CIRC_RETRIEVE_VIA_COPY
 }
 
 circ.util.offline_checkout_columns = function(modify,params) {