1.02 version can now parse BofA's new, incompatible settlement return master BUSINESS_ONLINEPAYMENT_BANKOFAMERICA_1_02
authorivan <ivan>
Tue, 19 Nov 2002 23:41:24 +0000 (23:41 +0000)
committerivan <ivan>
Tue, 19 Nov 2002 23:41:24 +0000 (23:41 +0000)
BankOfAmerica.pm
Changes
Makefile.PL

index 23ca8c9..8eeac99 100644 (file)
@@ -1,6 +1,6 @@
 package Business::OnlinePayment::BankOfAmerica;
 
-# $Id: BankOfAmerica.pm,v 1.2 2002-08-14 01:01:16 ivan Exp $
+# $Id: BankOfAmerica.pm,v 1.3 2002-11-19 23:41:24 ivan Exp $
 
 use strict;
 use Carp qw(croak);
@@ -14,7 +14,7 @@ require Exporter;
 @ISA = qw(Exporter AutoLoader Business::OnlinePayment);
 @EXPORT = qw();
 @EXPORT_OK = qw();
-$VERSION = '1.01';
+$VERSION = '1.02';
 
 sub set_defaults {
     my $self = shift;
@@ -162,8 +162,8 @@ sub submit {
 
     my %post_data = $self->get_fields( @fields );
 
-    warn "$_ => $post_data{$_}\n" for keys %post_data;
-    warn "\n";
+#    warn "$_ => $post_data{$_}\n" for keys %post_data;
+#    warn "\n";
     my $pd = make_form(%post_data);
     my $s = $self->server();
     my $p = $self->port();
@@ -174,17 +174,23 @@ sub submit {
 
     my %response;
     if ( $action eq 'post authorization' ) {
-     $page =~ s/<HTML>.*//s;
-     $page =~ s/\n+$//;
-     %response =
-        map { /^(\w+)\=(.*)$/ or /^()()$/ or die $_; lc($1) => $2 }
-          split(/\r/, $page);
+#      warn $page;
+      #$page =~ s/<HTML>.*//s;
+      #$page =~ s/\n+$//g;
+      $page =~ s/\r//g;
+      %response =
+        map { /^(\w+)\=(.*)$/ or /^()()$/ or die "unparsable response: $_";
+              lc($1) => $2 }
+          #split(/\r/, $page);
+          split(/\n/, $page);
     } else {
       %response =
-        map { /^(\w+)\=(.*)$/ or die $_; lc($1) => $2 } split(/\<BR\>/i, $page);
+        map { /^(\w+)\=(.*)$/ or die "unparsable response: $_";
+              lc($1) => $2 }
+          split(/\<BR\>/i, $page);
     }
 
-    warn "$_ => $response{$_}\n" for keys %response;
+    #warn "$_ => $response{$_}\n" for keys %response;
 
     $self->server_response($page);
 
diff --git a/Changes b/Changes
index de927ac..6bfac9c 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,8 @@
 Revision history for Perl extension Business::OnlinePayment::BankOfAmerica.
 
+1.02  Tue Nov 19 15:40:05 2002
+       - update for new incompatible BofA settlement return
+
 1.01  Tue Aug 13 18:00:25 2002
        - update README
        - declare dependancy on Business::OnlinePayment
index 2f2ada7..db1ef2a 100644 (file)
@@ -4,10 +4,10 @@ use ExtUtils::MakeMaker;
 WriteMakefile(
     'NAME'         => 'Business::OnlinePayment::BankOfAmerica',
     'VERSION_FROM' => 'BankOfAmerica.pm', # finds $VERSION
-    'AUTHOR'       => 'Ivan Kohler <ivan-authorizenet@420.am>',
+    'AUTHOR'       => 'Ivan Kohler <ivan-bankofamerica@420.am>',
     #'NORECURS'     => 1, # dont descend into subdirectories
-    'PREREQ_PM'    => { 'Net::SSLeay' => 0,
-                        'Business::OnlinePayment' => 0,
+    'PREREQ_PM'    => { 'Net::SSLeay' => '0',
+                        'Business::OnlinePayment' => '0',
                       },
     #'dist'         => {CI => 'ci -l'},
 );