# Now I can start looping
foreach my $customer (@customers)
{
+ my $paydate = $customer->getfield('paydate');
+ next if $paydate =~ /^\s*$/; #skip empty expiration dates
+
my $custnum = $customer->getfield('custnum');
my $first = $customer->getfield('first');
my $last = $customer->getfield('last');
my $company = $customer->getfield('company');
my $payby = $customer->getfield('payby');
my $payinfo = $customer->getfield('payinfo');
- my $paydate = $customer->getfield('paydate');
my $daytime = $customer->getfield('daytime');
my $night = $customer->getfield('night');
-
+
my ($payyear,$paymonth,$payday) = split (/-/,$paydate);
my $expire_time = timelocal(0,0,0,$payday,--$paymonth,$payyear);
#credit cards expire at the end of the month/year of their exp date
- if ($payby eq 'CARD') {
+ if ($payby eq 'CARD' || $payby eq 'DCRD') {
($paymonth < 11) ? $paymonth++ : ($paymonth=0, $payyear++);
$expire_time = timelocal(0,0,0,$payday,$paymonth,$payyear);
$expire_time--;
$FS::alerter::_template::first = $first;
$FS::alerter::_template::last = $last;
$FS::alerter::_template::company = $company;
- if ($payby eq 'CARD') {
+ if ($payby eq 'CARD' || $payby eq 'DCRD') {
$FS::alerter::_template::payby = "credit card (" .
substr($payinfo, 0, 2) . "xxxxxxxxxx" .
substr($payinfo, -4) . ")";
);
$!=0;
$message->smtpsend( Host => $smtpmachine )
- or die "Can't send expiration email!: $!"; #die? warn?
+ or $message->smtpsend( Host => $smtpmachine, Debug => 1 )
+ or die "Can't send expiration email: $!";
} elsif ( ! @invoicing_list || grep { $_ eq 'POST' } @invoicing_list ) {
push @body, sprintf(qq{%5d %-32.32s %4s %10s %12s %12s},
$!=0;
$message->smtpsend( Host => $smtpmachine )
or $message->smtpsend( Host => $smtpmachine, Debug => 1 )
- or return "can't send alerter failure email to $failure_recipient".
- " via server $smtpmachine with SMTP: $!";
+ or die "can't send alerter failure email to $failure_recipient".
+ " via server $smtpmachine with SMTP: $!";
}
# subroutines
=head1 VERSION
-$Id: freeside-expiration-alerter,v 1.2 2002-03-07 19:50:24 jeff Exp $
+$Id: freeside-expiration-alerter,v 1.5 2003-04-21 20:53:57 ivan Exp $
=head1 BUGS