RT#30820: Report not working
authorJonathan Prykop <jonathan@freeside.biz>
Wed, 22 Jun 2016 04:07:14 +0000 (23:07 -0500)
committerJonathan Prykop <jonathan@freeside.biz>
Wed, 22 Jun 2016 04:07:14 +0000 (23:07 -0500)
FS/FS/log_context.pm
FS/FS/part_pkg/flat_introrate.pm

index ab1b0c3..83414a6 100644 (file)
@@ -11,6 +11,7 @@ my @contexts = ( qw(
   FS::cust_main::Billing::bill
   FS::cust_main::Billing_Realtime::realtime_verify_bop
   FS::pay_batch::import_from_gateway
   FS::cust_main::Billing::bill
   FS::cust_main::Billing_Realtime::realtime_verify_bop
   FS::pay_batch::import_from_gateway
+  FS::part_pkg
   FS::Misc::Geo::standardize_uscensus
   Cron::bill
   Cron::backup
   FS::Misc::Geo::standardize_uscensus
   Cron::bill
   Cron::backup
index 7337602..1fc9cd2 100644 (file)
@@ -4,6 +4,8 @@ use base qw( FS::part_pkg::flat );
 use strict;
 use vars qw( %info );
 
 use strict;
 use vars qw( %info );
 
+use FS::Log;
+
 %info = (
   'name' => 'Introductory price for X months, then flat rate,'.
             'relative to setup date (anniversary billing)',
 %info = (
   'name' => 'Introductory price for X months, then flat rate,'.
             'relative to setup date (anniversary billing)',
@@ -30,7 +32,10 @@ sub base_recur {
 
   my ($duration) = ($self->option('intro_duration') =~ /^\s*(\d+)\s*$/);
   unless (length($duration)) {
 
   my ($duration) = ($self->option('intro_duration') =~ /^\s*(\d+)\s*$/);
   unless (length($duration)) {
-    die "Invalid intro_duration: " . $self->option('intro_duration');
+    my $log = FS::Log->new('FS::part_pkg');
+    $log->warning("Invalid intro_duration '".$self->option('intro_duration')."' on pkgpart ".$self->pkgpart
+                .", defaulting to 0, check package definition");
+    $duration = 0;
   }
   my $intro_end = $self->add_freq($cust_pkg->setup, $duration);
 
   }
   my $intro_end = $self->add_freq($cust_pkg->setup, $duration);