started plugging in PO printing, at least to HTML. this assumes a format.po.html...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 6 Apr 2009 15:22:40 +0000 (15:22 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Mon, 6 Apr 2009 15:22:40 +0000 (15:22 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@12797 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/js/ui/default/acq/common/li_table.js
Open-ILS/web/js/ui/default/acq/po/view_po.js
Open-ILS/web/templates/default/acq/common/li_table.tt2

index 9df4a44..6145196 100644 (file)
@@ -9,6 +9,7 @@ dojo.require('openils.acq.PO');
 dojo.require('openils.acq.Picklist');
 dojo.require('openils.widget.AutoFieldWidget');
 dojo.require('dojo.data.ItemFileReadStore');
+dojo.require('openils.widget.ProgressDialog');
 
 function AcqLiTable() {
 
@@ -442,9 +443,33 @@ function AcqLiTable() {
                 this._loadPLSelect();
                 acqLitSavePlDialog.show();
                 break;
+
+            case 'print_po':
+                this.printPO();
+                break;
         }
     }
 
+    this.printPO = function() {
+        if(!this.isPO) return;
+        progressDialog.show();
+        console.log("printing PO " + this.isPO);
+        fieldmapper.standardRequest(
+            ['open-ils.acq', 'open-ils.acq.purchase_order.format'],
+            {   async: true,
+                params: [this.authtoken, this.isPO, 'html'],
+                oncomplete: function(r) {
+                    progressDialog.hide();
+                    var evt = openils.Util.readResponse(r);
+                    if(evt && evt.template_output()) {
+                        win = window.open('','', 'resizable,width=700,height=500,scrollbars=1');
+                        win.document.body.innerHTML = evt.template_output().data();
+                    }
+                }
+            }
+        );
+    }
+
     this._createPO = function(fields) {
         this.show('acq-lit-create-po-progress');
         var po = new fieldmapper.acqpo();
index e0bb982..d8900c3 100644 (file)
@@ -8,7 +8,7 @@ var liTable;
 function init() {
     liTable = new AcqLiTable();
     liTable.reset();
-    liTable.isPO = true;
+    liTable.isPO = poId;
 
     fieldmapper.standardRequest(
         ['open-ils.acq', 'open-ils.acq.purchase_order.retrieve'],
index e3fe968..f03a536 100644 (file)
         </table>
     </div>
 
+    <div class='hidden'><div dojoType='openils.widget.ProgressDialog' jsId='progressDialog' indeterminate='true'/></div>
+
 </div>