[freeside-commits] branch FREESIDE_3_BRANCH updated. 8998e26614828e2a498781e9c8912e412c856857

Ivan Kohler ivan at freeside.biz
Thu Mar 3 12:25:15 PST 2022


The branch, FREESIDE_3_BRANCH has been updated
       via  8998e26614828e2a498781e9c8912e412c856857 (commit)
      from  2d836b1dc14d820ccaf7d6950cdb9df65272bb36 (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 8998e26614828e2a498781e9c8912e412c856857
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Thu Mar 3 12:25:14 2022 -0800

    update warnings re: census tract length so real errors are easier to spot, RT#86245

diff --git a/FS/FS/Report/FCC_477.pm b/FS/FS/Report/FCC_477.pm
index 760f6f22d..29505f8e9 100644
--- a/FS/FS/Report/FCC_477.pm
+++ b/FS/FS/Report/FCC_477.pm
@@ -320,7 +320,7 @@ sub report {
   my $num_errors = 0;
   foreach my $row (@$data) {
     if ( $class->can($check_method) ) { # they don't all have these
-      my $eh = $class->$check_method( $row );
+      my $eh = $class->$check_method( $row, 'date'=>$opt{'date'} );
       $num_errors++ if keys(%$eh);
       push @$error, $eh
     }
@@ -442,12 +442,19 @@ sub fbs_sql {
 sub fbs_check {
   my $class = shift;
   my $row = shift;
+
+  my %opt = @_;
+  my $date = $opt{date} || time;
+  my $census_digits = ($date < 1601449200) ? 11 : 15; # 9/30/2020, halfway
+                                                      # between the two filing
+                                                      # dates when it changed
+
   my %e;
   #censustract
   if ( length($row->[0]) == 0 ) {
     $e{'censustract_null'} = 'The package location has no census tract.';
-  } elsif ($row->[0] !~ /^\d{11}$/) {
-    $e{'censustract_bad'} = 'The census tract must be exactly 11 digits.';
+  } elsif ($row->[0] !~ /^\d{$census_digits}$/) {
+    $e{'censustract_bad'} = "The census tract must be exactly $census_digits digits.";
   }
 
   #technology
@@ -515,12 +522,18 @@ sub fvs_sql {
 sub fvs_check {
   my $class = shift;
   my $row = shift;
+  my %opt = @_;
+  my $date = $opt{date} || time;
+  my $census_digits = ($date < 1601449200) ? 11 : 15; # 9/30/2020, halfway
+                                                      # between the two filing
+                                                      # dates when it changed
+
   my %e;
   #censustract
   if ( length($row->[0]) == 0 ) {
     $e{'censustract_null'} = 'The package location has no census tract.';
-  } elsif ($row->[0] !~ /^\d{11}$/) {
-    $e{'censustract_bad'} = 'The census tract must be exactly 11 digits.';
+  } elsif ($row->[0] !~ /^\d{$census_digits}$/) {
+    $e{'censustract_bad'} = "The census tract must be exactly $census_digits digits.";
   }
   return \%e;
 }

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

Summary of changes:
 FS/FS/Report/FCC_477.pm | 23 ++++++++++++++++++-----
 1 file changed, 18 insertions(+), 5 deletions(-)




More information about the freeside-commits mailing list