X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_bill_pay.pm;h=873d718efc1446d26628c0f82a97eb8c712231f6;hb=73df7e1288401feb3c2a15a47b20e98e04c30c91;hp=e1b02aecb994574500cb7736944a91c71e976ba2;hpb=4396080ed2829ae0595f1fd777f39d090c9bcd7c;p=freeside.git diff --git a/FS/FS/cust_bill_pay.pm b/FS/FS/cust_bill_pay.pm index e1b02aecb..873d718ef 100644 --- a/FS/FS/cust_bill_pay.pm +++ b/FS/FS/cust_bill_pay.pm @@ -89,9 +89,9 @@ Deletes this payment application, unless the closed flag for the parent payment sub delete { my $self = shift; return "Can't delete application for closed payment" - if $self->cust_pay->closed =~ /^Y/i; + if $self->cust_pay && $self->cust_pay->closed =~ /^Y/i; return "Can't delete application for closed invoice" - if $self->cust_bill->closed =~ /^Y/i; + if $self->cust_bill && $self->cust_bill->closed =~ /^Y/i; $self->SUPER::delete(@_); } @@ -150,6 +150,24 @@ sub cust_pay { qsearchs( 'cust_pay', { 'paynum' => $self->paynum } ); } +=item send_receipt HASHREF | OPTION => VALUE ... + +Sends a payment receipt for the associated payment, against this specific +invoice. If there is an error, returns the error, otherwise returns false. + +See L. + +=cut + +sub send_receipt { + my $self = shift; + my $opt = ref($_[0]) ? shift : { @_ }; + $self->cust_pay->send_receipt( + 'cust_bill' => $self->cust_bill, + %$opt, + ); +} + =back =head1 BUGS