]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/web/js/ui/default/acq/po/view_po.js
tighter control over displaying mark-recived and update-barcodes links in lineitem...
[working/Evergreen.git] / Open-ILS / web / js / ui / default / acq / po / view_po.js
1 dojo.require('dijit.layout.ContentPane');
2 dojo.require('openils.User');
3 dojo.require('openils.Util');
4 dojo.require('openils.PermaCrud');
5
6 var PO = null;
7 var liTable;
8
9 function init() {
10     liTable = new AcqLiTable();
11     liTable.reset();
12     liTable.isPO = poId;
13
14     fieldmapper.standardRequest(
15         ['open-ils.acq', 'open-ils.acq.purchase_order.retrieve'],
16         {   async: true,
17             params: [openils.User.authtoken, poId, {flesh_price_summary:true, flesh_lineitem_count:true}],
18             oncomplete: function(r) {
19                 PO = openils.Util.readResponse(r);
20                 dojo.byId('acq-po-view-id').innerHTML = PO.id();
21                 dojo.byId('acq-po-view-name').innerHTML = PO.name();
22                 dojo.byId('acq-po-view-total-li').innerHTML = PO.lineitem_count();
23                 dojo.byId('acq-po-view-total-enc').innerHTML = PO.amount_encumbered();
24                 dojo.byId('acq-po-view-total-spent').innerHTML = PO.amount_spent();
25                 dojo.byId('acq-po-view-state').innerHTML = PO.state(); // TODO i18n
26
27                 if(PO.state() == 'pending') 
28                     openils.Util.show('acq-po-activate');
29             }
30         }
31     );
32
33     fieldmapper.standardRequest(
34         ['open-ils.acq', 'open-ils.acq.lineitem.search'],
35         {   async: true,
36             params: [openils.User.authtoken, {purchase_order:poId}, {flesh_attrs:true, flesh_notes:true}],
37             onresponse: function(r) {
38                 liTable.show('list');
39                 liTable.addLineitem(openils.Util.readResponse(r));
40             }
41         }
42     );
43 }
44
45 function activatePo() {
46     progressDialog.show(true);
47     try {
48         fieldmapper.standardRequest(
49             ['open-ils.acq', 'open-ils.acq.purchase_order.activate'],
50             {   async: true,
51                 params: [openils.User.authtoken, PO.id()],
52                 oncomplete : function() {
53                     location.href = location.href;
54                 }
55             }
56         );
57     } catch(E) {
58         progressDialog.hide();
59     }
60 }
61
62 function updatePoName() {
63     var value = prompt('Enter new purchase order name:', PO.name()); // TODO i18n
64     if(!value || value == PO.name()) return;
65     PO.name(value);
66     var pcrud = new openils.PermaCrud();
67     pcrud.update(PO, {
68         oncomplete : function(r) {
69             var stat = openils.Util.readResponse(r);
70             if(stat) 
71                 dojo.byId('acq-po-view-name').innerHTML = value;
72         }
73     });
74 }
75
76 openils.Util.addOnLoad(init);