[freeside-commits] branch master updated. 61ea51152f19edd37043f6c29303bfe16809f0f6

Jonathan Prykop jonathan at 420.am
Wed Mar 4 19:30:32 PST 2015


The branch, master has been updated
       via  61ea51152f19edd37043f6c29303bfe16809f0f6 (commit)
      from  7c7d54475dcdb041af4b42b13d3d4084627a8e9f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 61ea51152f19edd37043f6c29303bfe16809f0f6
Author: Jonathan Prykop <jonathan at freeside.biz>
Date:   Wed Mar 4 21:29:30 2015 -0600

    RT#30825 Modernize Bulk payment importing [fixed format handling]

diff --git a/FS/FS/cust_pay.pm b/FS/FS/cust_pay.pm
index ce8a355..8b4c98a 100644
--- a/FS/FS/cust_pay.pm
+++ b/FS/FS/cust_pay.pm
@@ -1170,8 +1170,6 @@ sub process_upgrade_paybatch {
 sub process_batch_import {
   my $job = shift;
 
-  #agent_custid isn't a cust_pay field, see hash callback
-  my $format = [ qw(custnum agent_custid paid payinfo invnum) ];
   my $hashcb = sub {
     my %hash = @_;
     my $custnum = $hash{'custnum'};
@@ -1225,19 +1223,11 @@ sub process_batch_import {
 
   my $opt = { 'table'   => 'cust_pay',
               'params'  => [ '_date', 'agentnum', 'payby', 'paybatch' ],
-              'formats' => {
-                'simple-csv' => $format,
-                'simple-xls' => $format,
-              },
-              'format_types' => {
-                'simple-csv' => 'csv',
-                'simple-xls' => 'xls',
-              },
-              'default_csv' => 1,
-              'format_hash_callbacks' => { 
-                'simple-csv' => $hashcb,
-                'simple-xls' => $hashcb,
-              },
+                                         #agent_custid isn't a cust_pay field, see hash callback
+              'formats' => { 'simple' => [ qw(custnum agent_custid paid payinfo invnum) ] },
+              'format_types' => { 'simple' => '' }, #force infer from file extension
+              'default_csv' => 1, #if it's not .xls, it'll read as csv, regardless of extension
+              'format_hash_callbacks' => { 'simple' => $hashcb },
               'postinsert_callback' => sub {
                  my $cust_pay = shift;
                  my $cust_main = $cust_pay->cust_main ||
diff --git a/httemplate/misc/cust_pay-import.cgi b/httemplate/misc/cust_pay-import.cgi
index 102f842..bc4ac83 100644
--- a/httemplate/misc/cust_pay-import.cgi
+++ b/httemplate/misc/cust_pay-import.cgi
@@ -33,8 +33,7 @@ Import a file containing customer payments.
   <TH ALIGN="right">Format</TH>
   <TD>
     <SELECT NAME="format">
-      <OPTION VALUE="simple-csv">Comma-separated (.csv)</OPTION>
-      <OPTION VALUE="simple-xls">Excel (.xls)</OPTION>
+      <OPTION VALUE="simple">Simple</OPTION>
     </SELECT>
   </TD>
 </TR>

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/cust_pay.pm                   |   20 +++++---------------
 httemplate/misc/cust_pay-import.cgi |    3 +--
 2 files changed, 6 insertions(+), 17 deletions(-)




More information about the freeside-commits mailing list