summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xhttemplate/search/cust_pay_batch.cgi17
-rw-r--r--httemplate/view/cust_main/payment_history.html18
2 files changed, 33 insertions, 2 deletions
diff --git a/httemplate/search/cust_pay_batch.cgi b/httemplate/search/cust_pay_batch.cgi
index fec3dfdeb..e378ffae7 100755
--- a/httemplate/search/cust_pay_batch.cgi
+++ b/httemplate/search/cust_pay_batch.cgi
@@ -58,9 +58,15 @@
%>
<%init>
+my $conf = new FS::Conf;
+
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Financial reports')
- || $FS::CurrentUser::CurrentUser->access_right('Process batches');
+ || $FS::CurrentUser::CurrentUser->access_right('Process batches')
+ || ( $cgi->param('custnum')
+ && $conf->exists('batch-enable')
+ #&& $FS::CurrentUser::CurrentUser->access_right('View customer batched payments')
+ );
my( $count_query, $sql_query );
my $hashref = {};
@@ -75,6 +81,14 @@ if ( $cgi->param('batchnum') && $cgi->param('batchnum') =~ /^(\d+)$/ ) {
$batchnum = $pay_batch->batchnum;
}
+if ( $cgi->param('custnum') && $cgi->param('custnum') =~ /^(\d+)$/ ) {
+ push @search, "custnum = $1";
+}
+
+if ( $cgi->param('status') && $cgi->param('status') =~ /^(\w)$/ ) {
+ push @search, "pay_batch.status = '$1'";
+}
+
if ( $cgi->param('payby') ) {
$cgi->param('payby') =~ /^(CARD|CHEK)$/
or die "illegal payby " . $cgi->param('payby');
@@ -111,7 +125,6 @@ $sql_query = "SELECT paybatchnum,invnum,custnum,cpb.last,cpb.first," .
my $html_init = '';
if ( $pay_batch ) {
- my $conf = new FS::Conf;
my $fixed = $conf->config('batch-fixed_format-'. $pay_batch->payby);
if (
$pay_batch->status eq 'O'
diff --git a/httemplate/view/cust_main/payment_history.html b/httemplate/view/cust_main/payment_history.html
index 43c55e8c9..b2d98cc55 100644
--- a/httemplate/view/cust_main/payment_history.html
+++ b/httemplate/view/cust_main/payment_history.html
@@ -49,6 +49,17 @@
<BR>
% }
+% if ( $conf->exists('batch-enable')
+% #&& $curuser->access_right('View customer tax exemptions')
+% ) {
+ View batched payments:
+% foreach my $status (qw( Queued In-transit Complete All )) {
+ <A HREF="<% $p %>search/cust_pay_batch.cgi?status=<% $status{$status} %>;custnum=<% $custnum %>"><% $status %></A>
+ <% $status ne 'All' ? '|' : '' %>
+% }
+ <BR>
+% }
+
%#get payment history
%my @history = ();
%
@@ -584,4 +595,11 @@ my @payby = grep /\w/, $conf->config('payby');
unless @payby;
my %payby = map { $_=>1 } @payby;
+my %status = (
+ 'Queued' => 'O', #Open
+ 'In-transit' => 'I',
+ 'Complete' => 'R', #Resolved
+ 'All' => '',
+);
+
</%init>