From a7dc3bdb9e88e98e2b0df1dd15da1612f9f996db Mon Sep 17 00:00:00 2001 From: erickson Date: Thu, 24 Aug 2006 18:28:44 +0000 Subject: [PATCH] v1 git-svn-id: svn://svn.open-ils.org/ILS/trunk@5659 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../staff_client/server/admin/cash_reports.js | 119 ++++++++++++++++++ .../server/admin/cash_reports.xhtml | 89 +++++++++++++ 2 files changed, 208 insertions(+) create mode 100644 Open-ILS/xul/staff_client/server/admin/cash_reports.js create mode 100644 Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml diff --git a/Open-ILS/xul/staff_client/server/admin/cash_reports.js b/Open-ILS/xul/staff_client/server/admin/cash_reports.js new file mode 100644 index 0000000000..d06e8c51da --- /dev/null +++ b/Open-ILS/xul/staff_client/server/admin/cash_reports.js @@ -0,0 +1,119 @@ +var FETCH_DESK_PAYMENTS = 'open-ils.circ:open-ils.circ.money.org_unit.desk_payments'; +var FETCH_USER_PAYMENTS = 'open-ils.circ:open-ils.circ.money.org_unit.user_payments'; + +var myPerms = [ 'VIEW_TRANSACTIONS' ]; +var crBaseOrg; + +function crInit() { + fetchUser(); + $('user').appendChild(text(USER.usrname())); + + setTimeout( + function() { + fetchHighestPermOrgs( SESSION, USER.id(), myPerms ); + crSetCals(); + crBuildOrgs(); + crDrawRange(); + }, + 20 + ); +} + +function crSetCals() { + + Calendar.setup({ + inputField : "cr_start", + ifFormat : "%Y-%m-%d", + button : "cr_start_trigger", + align : "Tl", + singleClick : true + }); + + Calendar.setup({ + inputField : "cr_end", + ifFormat : "%Y-%m-%d", + button : "cr_end_trigger", + align : "Tl", + singleClick : true + }); + + var d = new Date(); + var y = d.getYear()+1900; + var m = ((d.getMonth()+1)+'').replace(/^(\d)$/,'0$1'); + var da = (d.getDate()+'').replace(/^(\d)$/,'0$1'); + + var dat = y+'-'+m+'-'+da; + $('cr_start').value = dat; + $('cr_end').value = dat; +} + + +function crCurrentOrg() { + var selector = $('cr_orgs'); + return getSelectorVal(selector); +} + +function crBuildOrgs() { + + var org = findOrgUnit(PERMS['VIEW_TRANSACTIONS']); + + if(!org) { + $('cr_orgs').disabled = true; + return; + } + + org = findOrgUnit(org); + var type = findOrgType(org.ou_type()) ; + + var selector = $('cr_orgs'); + buildOrgSel(selector, org, type.depth()); + + for( var i = 0; i < selector.options.length; i++ ) { + var opt = selector.options[i]; + if( !isTrue(findOrgType( findOrgUnit(opt.value).ou_type() ).can_have_users()) ) + opt.disabled = true; + } + + selector.onchange = crDrawRange; + + crBaseOrg = org; + + var gotoOrg = USER.ws_ou(); + if( ! setSelector( selector, gotoOrg ) ) { + gotoOrg = USER.home_ou(); + setSelector( selector, gotoOrg ); + } + + return gotoOrg; +} + +function crDrawRange() { + var org = crCurrentOrg(); + + removeChildren($('cr_desk_payments')); + removeChildren($('cr_user_payments')); + + var req = new Request( FETCH_DESK_PAYMENTS, SESSION, + org, $('cr_start').value, $('cr_end').value ); + req.callback( + function(r) { + drawFMObjectTable( { dest : 'cr_desk_payments', obj : r.getResultObject() }); + sortables_init(); + } + ); + req.send(); + + var req = new Request( FETCH_USER_PAYMENTS, SESSION, + org, $('cr_start').value, $('cr_end').value ); + req.callback( + function(r) { + drawFMObjectTable( { dest : 'cr_user_payments', obj : r.getResultObject() }); + sortables_init(); + } + ); + req.send(); +} + + + + diff --git a/Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml b/Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml new file mode 100644 index 0000000000..483b62bcdc --- /dev/null +++ b/Open-ILS/xul/staff_client/server/admin/cash_reports.xhtml @@ -0,0 +1,89 @@ + + + + + Evergreen: Cash Reports + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Welcome +
+ +
+ + Start Date: + + + + End Date: + + + +
(YYYY-MM-DD)
+ +
View reports for :