push out event triggered suspensions
[freeside.git] / FS / FS / part_bill_event.pm
index 1d48af9..4e7aa52 100644 (file)
@@ -5,6 +5,8 @@ use vars qw( @ISA $DEBUG @EXPORT_OK );
 use Carp qw(cluck confess);
 use FS::Record qw( dbh qsearch qsearchs );
 use FS::Conf;
+use FS::cust_main;
+use FS::cust_bill;
 
 @ISA = qw( FS::Record );
 @EXPORT_OK = qw( due_events );
@@ -244,6 +246,9 @@ sub due_events {
   sort {    $a->seconds   <=> $b->seconds
          || $a->weight    <=> $b->weight
         || $a->eventpart <=> $b->eventpart }
+    grep { ref($record) ne 'FS::cust_bill' || $_->eventcode !~ /honor_dundate/
+           || $event_time > $record->cust_main->dundate
+         }
     grep { $_->seconds <= ( $interval )
            && ! qsearch( 'cust_bill_event', {
                           'invnum' => $record->get($record->dbdef_table->primary_key),