]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/xul/staff_client/server/admin/cash_reports.js
29056fbe3b1c962ea52c933a46750e5701b867ba
[Evergreen.git] / Open-ILS / xul / staff_client / server / admin / cash_reports.js
1 var FETCH_DESK_PAYMENTS = 'open-ils.circ:open-ils.circ.money.org_unit.desk_payments';
2 var FETCH_USER_PAYMENTS = 'open-ils.circ:open-ils.circ.money.org_unit.user_payments';
3
4 var myPerms = [ 'VIEW_TRANSACTION' ];
5 var crBaseOrg;
6
7 function crInit() {
8         fetchUser();
9         $('user').appendChild(text(USER.usrname()));
10
11         setTimeout( 
12                 function() { 
13                         fetchHighestPermOrgs( SESSION, USER.id(), myPerms );
14                         crSetCals();
15                         crBuildOrgs();
16                         crDrawRange();
17                 }, 
18                 20 
19         );
20 }
21
22 function crSetCals() {
23
24         Calendar.setup({
25                 inputField  : "cr_start",
26                 ifFormat    : "%Y-%m-%d",
27                 button      : "cr_start_trigger",
28                 align       : "Tl",           
29                 singleClick : true
30         });
31
32         Calendar.setup({
33                 inputField  : "cr_end",
34                 ifFormat    : "%Y-%m-%d",
35                 button      : "cr_end_trigger",
36                 align       : "Tl",           
37                 singleClick : true
38         });
39
40         var d = new Date();
41         var y = d.getYear()+1900;
42         var m = ((d.getMonth()+1)+'').replace(/^(\d)$/,'0$1');
43         var da = (d.getDate()+'').replace(/^(\d)$/,'0$1');
44
45         var dat = y+'-'+m+'-'+da;
46         $('cr_start').value = dat;
47         $('cr_end').value = dat;
48 }
49
50
51 function crCurrentOrg() {
52         var selector = $('cr_orgs');
53         return getSelectorVal(selector);
54 }
55
56 function crBuildOrgs() {
57
58         var org = findOrgUnit(PERMS['VIEW_TRANSACTIONS']);
59
60         if(!org) {
61                 $('cr_orgs').disabled = true;
62                 return;
63         }
64
65         org = findOrgUnit(org);
66         var type = findOrgType(org.ou_type()) ;
67
68         var selector = $('cr_orgs');
69         buildOrgSel(selector, org, type.depth());
70
71         for( var i = 0; i < selector.options.length; i++ ) {
72                 var opt = selector.options[i];
73                 if( !isTrue(findOrgType( findOrgUnit(opt.value).ou_type() ).can_have_users()) )
74                         opt.disabled = true;
75         }
76
77         selector.onchange = crDrawRange;
78
79         crBaseOrg = org;
80
81         var gotoOrg = USER.ws_ou();
82         if( ! setSelector( selector, gotoOrg ) ) {
83                 gotoOrg = USER.home_ou();
84                 setSelector( selector, gotoOrg );
85         }
86
87         return gotoOrg;
88 }
89
90 function crDrawRange() {
91         var org = crCurrentOrg();
92
93         removeChildren($('cr_desk_payments'));
94         removeChildren($('cr_user_payments'));
95
96         var req = new Request( FETCH_DESK_PAYMENTS, SESSION, 
97                 org, $('cr_start').value, $('cr_end').value );
98         req.callback(
99                 function(r) {
100                         drawFMObjectTable( { dest : 'cr_desk_payments', obj : r.getResultObject() });
101                         sortables_init();
102                 }
103         );
104         req.send();
105
106         var req = new Request( FETCH_USER_PAYMENTS, SESSION, 
107                 org, $('cr_start').value, $('cr_end').value );
108         req.callback(
109                 function(r) {
110                         drawFMObjectTable( { dest : 'cr_user_payments', obj : r.getResultObject() });
111                         sortables_init();
112                 }
113         );
114         req.send();
115 }
116
117
118
119