Mozilla has a printer settings object which we serialize when saving the settings...
authorphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 9 Nov 2009 18:54:18 +0000 (18:54 +0000)
committerphasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 9 Nov 2009 18:54:18 +0000 (18:54 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_6_0@14846 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
Open-ILS/xul/staff_client/chrome/content/util/print.js
Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties

index d8fae73..8a23cf4 100644 (file)
@@ -416,6 +416,9 @@ OpenILS.data.prototype = {
                }
                file.close();
 
+               JSAN.use('util.print'); (new util.print()).GetPrintSettings();
+               obj.data_progress('Printer settings retrieved. ');
+
                JSAN.use('util.functional');
                JSAN.use('util.fm_utils');
 
index 619dbc2..a00f3ee 100644 (file)
@@ -405,12 +405,13 @@ util.print.prototype = {
 
        'load_settings' : function() {
                try {
+                       var error_msg = '';
                        netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
                        var file = new util.file('gPrintSettings');
                        if (file._file.exists()) {
                                temp = file.get_object(); file.close();
                                for (var i in temp) {
-                                       this.gPrintSettings[i] = temp[i];
+                                       try { this.gPrintSettings[i] = temp[i]; } catch(E) { error_msg += 'Error trying to set gPrintSettings.'+i+'='+temp[i]+' : ' + js2JSON(E) + '\n'; }
                                }
                        } else {
                                this.gPrintSettings.marginTop = 0;
@@ -424,6 +425,17 @@ util.print.prototype = {
                                this.gPrintSettings.footerStrCenter = '';
                                this.gPrintSettings.footerStrRight = '';
                        }
+                       if (error_msg) {
+                               this.error.sdump('D_PRINT',error_msg);
+                               this.error.yns_alert(
+                                       document.getElementById('offlineStrings').getString('load_printer_settings_error_description'),
+                                       document.getElementById('offlineStrings').getString('load_printer_settings_error_title'),
+                                       document.getElementById('offlineStrings').getString('common.ok'),
+                                       null,
+                                       null,
+                                       null
+                               );
+                       }
                } catch(E) {
                        this.error.standard_unexpected_error_alert("load_settings()",E);
                }
index 97381f4..b7ac048 100644 (file)
@@ -230,3 +230,5 @@ menu.cmd_acq_view_exchange_rate.tab=Exchange Rates
 menu.cmd_acq_view_distrib_formula.tab=Distribution Formulas
 menu.local_admin.circ_matrix_matchpoint.tab=Circulation Policies
 menu.local_admin.hold_matrix_matchpoint.tab=Hold Policies
+load_printer_settings_error_description=Printer settings did not load cleanly with this version of Evergreen.  You should reconfigure your printer under Printer Settings Editor.
+load_printer_settings_error_title=Printer Settings