From 5593248f6473c51daf900f01a4922ad97857eba9 Mon Sep 17 00:00:00 2001
From: phasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Date: Tue, 21 Sep 2010 17:02:52 +0000
Subject: [PATCH] offline printer role

git-svn-id: svn://svn.open-ils.org/ILS/trunk@17869 dcc99617-32d9-48b4-a31d-7c20da2025e4
---
 Open-ILS/web/opac/locale/en-US/lang.dtd                               | 1 +
 Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js              | 2 +-
 Open-ILS/xul/staff_client/chrome/content/circ/offline.js              | 4 ++--
 Open-ILS/xul/staff_client/chrome/content/circ/offline_checkin.js      | 1 +
 Open-ILS/xul/staff_client/chrome/content/circ/offline_checkout.js     | 1 +
 Open-ILS/xul/staff_client/chrome/content/circ/offline_in_house_use.js | 1 +
 Open-ILS/xul/staff_client/chrome/content/circ/offline_renew.js        | 1 +
 Open-ILS/xul/staff_client/server/admin/printer_settings.html          | 1 +
 8 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/Open-ILS/web/opac/locale/en-US/lang.dtd b/Open-ILS/web/opac/locale/en-US/lang.dtd
index ce086257b6..398e0e6fad 100644
--- a/Open-ILS/web/opac/locale/en-US/lang.dtd
+++ b/Open-ILS/web/opac/locale/en-US/lang.dtd
@@ -3400,6 +3400,7 @@
 <!ENTITY staff.printing.context.radio.receipt.label "Receipt">
 <!ENTITY staff.printing.context.radio.label.label "Label">
 <!ENTITY staff.printing.context.radio.mail.label "Mail">
+<!ENTITY staff.printing.context.radio.offline.label "Offline">
 <!ENTITY staff.printing.normal_settings.header "Normal Settings">
 <!ENTITY staff.printing.advanced_settings.header "Advanced Settings">
 <!ENTITY staff.printing.advanced.mozilla_print "Use default print strategy (Mozilla Print)">
diff --git a/Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js b/Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
index d318ddb55d..0c51156ff7 100644
--- a/Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
+++ b/Open-ILS/xul/staff_client/chrome/content/OpenILS/data.js
@@ -272,7 +272,7 @@ OpenILS.data.prototype = {
         var obj = this;
         try {
             obj.print_strategy = {};
-            var print_contexts = [ 'default', 'receipt', 'label', 'mail' ];
+            var print_contexts = [ 'default', 'receipt', 'label', 'mail', 'offline' ];
             for (var i in print_contexts) {
                 JSAN.use('util.file'); var file = new util.file('print_strategy.' + print_contexts[i]);
                 if (file._file.exists()) {
diff --git a/Open-ILS/xul/staff_client/chrome/content/circ/offline.js b/Open-ILS/xul/staff_client/chrome/content/circ/offline.js
index 5fdf26e37e..12fe1b7ac7 100644
--- a/Open-ILS/xul/staff_client/chrome/content/circ/offline.js
+++ b/Open-ILS/xul/staff_client/chrome/content/circ/offline.js
@@ -52,7 +52,7 @@ circ.offline.prototype = {
                         'cmd_print_last_receipt' : [
                             ['command'],
                             function() { 
-                                JSAN.use('util.print'); var print = new util.print();
+                                JSAN.use('util.print'); var print = new util.print('offline');
                                 print.reprint_last();
                             }
                         ],
@@ -78,7 +78,7 @@ circ.offline.prototype = {
         data.print_list_defaults();
         data.load_saved_print_templates();
         data.fetch_print_strategy();
-        JSAN.use('util.print'); (new util.print()).GetPrintSettings();
+        JSAN.use('util.print'); (new util.print('offline')).GetPrintSettings();
     },
 
     'patron_init' : function() {
diff --git a/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkin.js b/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkin.js
index 6208f32012..fd6b69f48c 100644
--- a/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkin.js
+++ b/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkin.js
@@ -113,6 +113,7 @@ function next_patron() {
             try {
                 var params = {
                     'template' : 'offline_checkin',
+                    'printer_context' : 'offline',
                     'callback' : function() {
                         g.list.clear();
                         var x = $('i_barcode'); x.value = ''; x.focus();
diff --git a/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkout.js b/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkout.js
index a1dd912674..1b6e3e1c4a 100644
--- a/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkout.js
+++ b/Open-ILS/xul/staff_client/chrome/content/circ/offline_checkout.js
@@ -271,6 +271,7 @@ function next_patron(cancel) {
                 var params = {
                     'patron_barcode' : $('p_barcode').value,
                     'template' : 'offline_checkout',
+                    'printer_context' : 'offline',
                     'callback' : function() {
                         g.list.clear();
                         var x = $('i_barcode'); x.value = '';
diff --git a/Open-ILS/xul/staff_client/chrome/content/circ/offline_in_house_use.js b/Open-ILS/xul/staff_client/chrome/content/circ/offline_in_house_use.js
index 113189df2b..f84240629d 100644
--- a/Open-ILS/xul/staff_client/chrome/content/circ/offline_in_house_use.js
+++ b/Open-ILS/xul/staff_client/chrome/content/circ/offline_in_house_use.js
@@ -116,6 +116,7 @@ function next_patron() {
             try {
                 var params = {
                     'template' : 'offline_inhouse_use',
+                    'printer_context' : 'offline',
                     'callback' : function() {
                         g.list.clear();
                         var x = $('i_barcode'); x.value = ''; x.focus();
diff --git a/Open-ILS/xul/staff_client/chrome/content/circ/offline_renew.js b/Open-ILS/xul/staff_client/chrome/content/circ/offline_renew.js
index 601e3e963a..3b204681a9 100644
--- a/Open-ILS/xul/staff_client/chrome/content/circ/offline_renew.js
+++ b/Open-ILS/xul/staff_client/chrome/content/circ/offline_renew.js
@@ -226,6 +226,7 @@ function next_patron(cancel) {
                         var params = {
                             'patron_barcode' : $('p_barcode').value,
                             'template' : 'offline_renew',
+                            'printer_context' : 'offline',
                             'callback' : function() {
                                 g.list.clear();
                                 var x = $('i_barcode'); x.value = '';
diff --git a/Open-ILS/xul/staff_client/server/admin/printer_settings.html b/Open-ILS/xul/staff_client/server/admin/printer_settings.html
index 8f6ac18c46..3ab42ec507 100644
--- a/Open-ILS/xul/staff_client/server/admin/printer_settings.html
+++ b/Open-ILS/xul/staff_client/server/admin/printer_settings.html
@@ -34,6 +34,7 @@
         <input type="radio" name="context" value="receipt" onclick="g.set_printer_context('receipt');">&staff.printing.context.radio.receipt.label;</input>
         <input type="radio" name="context" value="label" onclick="g.set_printer_context('label');">&staff.printing.context.radio.label.label;</input>
         <input type="radio" name="context" value="mail" onclick="g.set_printer_context('mail');">&staff.printing.context.radio.mail.label;</input>
+        <input type="radio" name="context" value="offline" onclick="g.set_printer_context('offline');">&staff.printing.context.radio.offline.label;</input>
     </form> 
     <h1>&staff.printing.normal_settings.header;</h1>
     <iframe id="sample" src="printer_settings.txt"></iframe><br />
-- 
2.11.0