From de543e7727083dc2e0afee6edba81e66a66f2e21 Mon Sep 17 00:00:00 2001 From: berick Date: Wed, 30 Mar 2011 14:58:12 -0400 Subject: [PATCH] show payments tab when the user has any payments, even if there is no money owed --- Open-ILS/web/opac/skin/kcls/js/myopac.js | 29 ++++++++++++++++++++-- .../opac/skin/kcls/xml/myopac/myopac_summary.xml | 4 +-- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/Open-ILS/web/opac/skin/kcls/js/myopac.js b/Open-ILS/web/opac/skin/kcls/js/myopac.js index 52344e8829..26ed394881 100644 --- a/Open-ILS/web/opac/skin/kcls/js/myopac.js +++ b/Open-ILS/web/opac/skin/kcls/js/myopac.js @@ -157,7 +157,7 @@ function myOPACChangePage( page ) { switch( page ) { case "summary": unHideMe(ss); - if($('show_fines_link').innerHTML=="Hide Overdue Materials") unHideMe(ff); + if($('show_fines_link').innerHTML=="Hide Overdue Materials" || userHasPayments) unHideMe(ff); oncomplete = myOPACDrawSummary; break; @@ -250,6 +250,7 @@ function myOPACGrabPageData(page, oncomplete) { } +var userHasPayments = false; function myOPACDrawSummary() { var stats = userVitalStats; // see misc.js if(!stats) return; @@ -263,7 +264,31 @@ function myOPACDrawSummary() { showFinesDiv($('show_fines_link')); unHideMe($('pay_fines_btn1')); unHideMe($('show_fines_link')); + unHideMe($('acct_fines_tab')); } + + // If the user has any payment, make sure the payments tab is visible + var before = new Date() + before.setFullYear(before.getFullYear() - 1); + var req = new Request( + 'open-ils.actor:open-ils.actor.user.payments.retrieve.atomic', + G.user.session, G.user.id(), + {"where":{"payment_ts":{">=":dojo.date.stamp.toISOString(before)}}, "limit":1}); + + req.callback( + function(r) { + var pays = r.getResultObject(); + if(pays && pays.length) { + userHasPayments = true; + unHideMe($('myopac_fines_div')); + unHideMe($('acct_payments_tab')); + // if the user has no owed fines, show the payments by default + if(stats.fines.balance_owed == 0) + myopacDrawPayments(); + } + } + ); + req.send(); } function myOPACInitTemplates() { @@ -1435,7 +1460,7 @@ function myopacDrawPayments() { // KCLS limits payment history view to 1 year. This will eventually be expanded // out to a history view page, but for now, just fetch what's needed. var req = new Request( - 'open-ils.actor:open-ils.actor.user.payments.retrieve', + 'open-ils.actor:open-ils.actor.user.payments.retrieve.atomic', G.user.session, G.user.id(), {"where":{"payment_ts":{">=":dojo.date.stamp.toISOString(before)}}}); diff --git a/Open-ILS/web/opac/skin/kcls/xml/myopac/myopac_summary.xml b/Open-ILS/web/opac/skin/kcls/xml/myopac/myopac_summary.xml index f07d086def..e013cae4f0 100644 --- a/Open-ILS/web/opac/skin/kcls/xml/myopac/myopac_summary.xml +++ b/Open-ILS/web/opac/skin/kcls/xml/myopac/myopac_summary.xml @@ -51,8 +51,8 @@
- - + +
-- 2.11.0