X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_pay.pm;h=6dad3d702d0ba0e304bfaf9f7eb1556b81889356;hb=055fa6decdbd89e00f2b6e3faf77b068eea38c93;hp=2ef9a1c0f42b658f742e4b92fcd3a1a5eada682b;hpb=5820b395e421ac466714a72da27c9709def962a4;p=freeside.git diff --git a/FS/FS/cust_pay.pm b/FS/FS/cust_pay.pm index 2ef9a1c0f..6dad3d702 100644 --- a/FS/FS/cust_pay.pm +++ b/FS/FS/cust_pay.pm @@ -446,17 +446,20 @@ sub send_receipt { my $conf = new FS::Conf; + return '' unless $conf->exists('payment_receipt'); + my @invoicing_list = $cust_main->invoicing_list_emailonly; return '' unless @invoicing_list; $cust_bill ||= ($cust_main->cust_bill)[-1]; #rather inefficient though? + my $error = ''; + if ( ( exists($opt->{'manual'}) && $opt->{'manual'} ) - || ! $conf->exists('invoice_html_statement') # XXX msg_template + || ! $conf->exists('invoice_html_statement') || ! $cust_bill - ) { - - my $error = ''; + ) + { if ( $conf->exists('payment_receipt_msgnum') && $conf->config('payment_receipt_msgnum') @@ -467,6 +470,7 @@ sub send_receipt { $error = $msg_template->send('cust_main'=> $cust_main, 'object'=> $self); } elsif ( $conf->exists('payment_receipt_email') ) { + my $receipt_template = new Text::Template ( TYPE => 'ARRAY', SOURCE => [ map "$_\n", $conf->config('payment_receipt_email') ], @@ -509,21 +513,27 @@ sub send_receipt { 'body' => [ $receipt_template->fill_in( HASH => \%fill_in ) ], ); - } else { # no payment_receipt_msgnum or payment_receipt_email + } else { - my $queue = new FS::queue { - 'paynum' => $self->paynum, - 'job' => 'FS::cust_bill::queueable_email', - }; + warn "payment_receipt is on, but no payment_receipt_msgnum or invoice_html_statement is configured\n"; - $queue->insert( - 'invnum' => $cust_bill->invnum, - 'template' => 'statement', - ); } + + } else { #not manual + + my $queue = new FS::queue { + 'paynum' => $self->paynum, + 'job' => 'FS::cust_bill::queueable_email', + }; + + $error = $queue->insert( + 'invnum' => $cust_bill->invnum, + 'template' => 'statement', + ); + + } warn "send_receipt: $error\n" if $error; - } #$opt{manual} || no invoice_html_statement || customer has no invoices } =item cust_bill_pay