[freeside-commits] branch master updated. 7ff5165def7e86bd475d76e9d7c12e33516311e4

Jonathan Prykop jonathan at 420.am
Thu Jun 9 17:51:36 PDT 2016


The branch, master has been updated
       via  7ff5165def7e86bd475d76e9d7c12e33516311e4 (commit)
      from  d02f1d8fb338e4dd1b401892b3408a65cad3b4d4 (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 7ff5165def7e86bd475d76e9d7c12e33516311e4
Author: Jonathan Prykop <jonathan at freeside.biz>
Date:   Thu Jun 9 19:50:39 2016 -0500

    RT#71210: Update Payment Report for recent BIN changes

diff --git a/httemplate/search/elements/cust_pay_or_refund.html b/httemplate/search/elements/cust_pay_or_refund.html
index 9f725bb..c6617b1 100755
--- a/httemplate/search/elements/cust_pay_or_refund.html
+++ b/httemplate/search/elements/cust_pay_or_refund.html
@@ -327,7 +327,9 @@ if ( $cgi->param('magic') ) {
 
             #avoid posix regexes for portability
             $search =
+              # Visa
               " ( (     substring($table.payinfo from 1 for 1) = '4'     ".
+              #   is not Switch
               "     AND substring($table.payinfo from 1 for 4) != '4936' ".
               "     AND substring($table.payinfo from 1 for 6)           ".
               "         NOT $similar_to '49030[2-9]'                        ".
@@ -340,13 +342,18 @@ if ( $cgi->param('magic') ) {
               "     AND substring($table.payinfo from 1 for 6)           ".
               "         NOT $similar_to '49118[1-2]'                        ".
               "   )".
+              # MasterCard
               "   OR substring($table.payinfo from 1 for 2) = '51' ".
               "   OR substring($table.payinfo from 1 for 2) = '52' ".
               "   OR substring($table.payinfo from 1 for 2) = '53' ".
               "   OR substring($table.payinfo from 1 for 2) = '54' ".
               "   OR substring($table.payinfo from 1 for 2) = '54' ".
               "   OR substring($table.payinfo from 1 for 2) = '55' ".
-#              "   OR substring($table.payinfo from 1 for 2) = '36' ". #Diner's int'l was processed as Visa/MC inside US, now Discover
+              "   OR substring($table.payinfo from 1 for 4) $similar_to '222[1-9]' ".
+              "   OR substring($table.payinfo from 1 for 3) $similar_to '22[3-9]' ".
+              "   OR substring($table.payinfo from 1 for 2) $similar_to '2[3-6]' ".
+              "   OR substring($table.payinfo from 1 for 3) $similar_to '27[0-1]' ".
+              "   OR substring($table.payinfo from 1 for 4) = '2720' ".
               " ) ";
 
           } elsif ( $cardtype eq 'Amex' ) {
@@ -363,14 +370,14 @@ if ( $cgi->param('magic') ) {
             $search =
               " (    substring($table.payinfo from 1 for 4 ) = '6011'  ".
               "   OR substring($table.payinfo from 1 for 2 ) = '65'    ".
-              "   OR substring($table.payinfo from 1 for 3 ) = '300'   ".
+              "   OR substring($table.payinfo from 1 for 3 ) = '300'   ". # diner's 300-305
               "   OR substring($table.payinfo from 1 for 3 ) = '301'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '302'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '303'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '304'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '305'   ".
-              "   OR substring($table.payinfo from 1 for 4 ) = '3095'  ".
-              "   OR substring($table.payinfo from 1 for 2 ) = '36'    ".
+              "   OR substring($table.payinfo from 1 for 4 ) = '3095'  ". # diner's 3095
+              "   OR substring($table.payinfo from 1 for 2 ) = '36'    ". # diner's 36, 38, 39
               "   OR substring($table.payinfo from 1 for 2 ) = '38'    ".
               "   OR substring($table.payinfo from 1 for 2 ) = '39'    ".
               "   OR substring($table.payinfo from 1 for 3 ) = '644'   ".
@@ -379,8 +386,8 @@ if ( $cgi->param('magic') ) {
               "   OR substring($table.payinfo from 1 for 3 ) = '647'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '648'   ".
               "   OR substring($table.payinfo from 1 for 3 ) = '649'   ".
-              ( $country =~ /^(US|CA)$/
-               ?" OR substring($table.payinfo from 1 for 4 ) = '3528'  ". # JCB cards in the 3528-3589 range identified as Discover inside US/CA
+              ( $country =~ /^(US|PR|VI|MP|PW|GU)$/
+               ?" OR substring($table.payinfo from 1 for 4 ) = '3528'  ". # JCB cards in the 3528-3589 range identified as Discover inside US & territories (NOT Canada)
                 " OR substring($table.payinfo from 1 for 4 ) = '3529'  ".
                 " OR substring($table.payinfo from 1 for 3 ) = '353'   ".
                 " OR substring($table.payinfo from 1 for 3 ) = '354'   ".
@@ -390,7 +397,10 @@ if ( $cgi->param('magic') ) {
                 " OR substring($table.payinfo from 1 for 3 ) = '358'   "
                :""
               ).
-              "   OR substring($table.payinfo from 1 for 3 ) = '622'   ". #China Union Pay processed as Discover outside CN
+              ( $country =~ /^(US|MX|AI|AG|AW|BS|BB|BM|BQ|VG|KY|CW|DM|DO|GD|GP|JM|MQ|MS|BL|KN|LC|VC|MF|SX|TT|TC)$/
+               ?" OR substring($table.payinfo from 1 for 3 ) $similar_to '62[24-68]'   " #China Union Pay processed as Discover outside CN
+               :""
+              ).
               " ) ";
 
           } elsif ( $cardtype eq 'Maestro' ) {

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

Summary of changes:
 httemplate/search/elements/cust_pay_or_refund.html |   24 ++++++++++++++------
 1 file changed, 17 insertions(+), 7 deletions(-)




More information about the freeside-commits mailing list