]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/xul/staff_client/server/admin/printer_settings.js
contentWindow wrapper to get around security
[Evergreen.git] / Open-ILS / xul / staff_client / server / admin / printer_settings.js
1 var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};
2
3 function my_init() {
4         try {
5                 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
6                                 if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
7                 JSAN.errorLevel = "die"; // none, warn, or die
8                 JSAN.addRepository('/xul/server/');
9                 JSAN.use('util.error'); g.error = new util.error();
10                 g.error.sdump('D_TRACE','my_init() for printer_settings.xul');
11
12                 JSAN.use('util.print'); g.print = new util.print();
13
14                 /*
15                 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
16                 g.PSSVC = Components.classes["@mozilla.org/gfx/printsettings-service;1"].getService(Components.interfaces.nsIPrintSettingsService);
17                 g.PO = Components.classes["@mozilla.org/gfx/printsettings-service;1"].getService(Components.interfaces.nsIPrintOptions);
18                 g.PPSVC = Components.classes["@mozilla.org/embedcomp/printingprompt-service;1"].getService(Components.interfaces.nsIPrintingPromptService);
19                 g.settings = g.PSSVC.globalPrintSettings;
20                 */
21
22         } catch(E) {
23                 try { g.error.standard_unexpected_error_dialog('admin/printer_settings.xul',E); } catch(F) { alert(E); }
24         }
25 }
26
27 g.page_settings = function() {
28         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
29         g.print.page_settings();
30         g.print.save_settings();
31 }
32
33 g.printer_settings = function() {
34         netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
35         var w = get_contentWindow(document.getElementById('sample'));
36         g.print.NSPrint(w ? w : window, false, {});
37         g.print.save_settings();
38 }
39
40 g.set_print_strategy = function(which) {
41         netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
42         JSAN.use('util.file'); var file = new util.file('print_strategy');
43         file.write_content( 'truncate', String( which ) );
44         file.close();
45         JSAN.use('OpenILS.data'); var data = new OpenILS.data(); data.init({'via':'stash'});
46         data.print_strategy = which; data.stash('print_strategy');
47         alert('Print strategy (' + which + ') saved to file system.');
48 }
49
50 g.save_settings = function() { g.print.save_settings(); }