summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2004-06-01 10:53:10 +0000
committerivan <ivan>2004-06-01 10:53:10 +0000
commitfc0e102e2e843e991f919eba9aba3429c4602ccf (patch)
tree356f85717c4fbcef0b1837171d8d8dc4f7ea7687 /FS
parentf492eacdbeb2767aa3ca4390d5c8c753b4573ae2 (diff)
per-agent invoice_from addresses
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/cust_bill.pm9
1 files changed, 6 insertions, 3 deletions
diff --git a/FS/FS/cust_bill.pm b/FS/FS/cust_bill.pm
index 1f4d85b41..d0583b2ef 100644
--- a/FS/FS/cust_bill.pm
+++ b/FS/FS/cust_bill.pm
@@ -317,7 +317,7 @@ sub owed {
$balance;
}
-=item send [ TEMPLATENAME [ , AGENTNUM ] ]
+=item send [ TEMPLATENAME [ , AGENTNUM [ , INVOICE_FROM ] ] ]
Sends this invoice to the destinations configured for this customer: send
emails or print. See L<FS::cust_main_invoice>.
@@ -327,12 +327,15 @@ TEMPLATENAME, if specified, is the name of a suffix for alternate invoices.
AGENTNUM, if specified, means that this invoice will only be sent for customers
of the specified agent.
+INVOICE_FROM, if specified, overrides the default email invoice From: address.
+
=cut
sub send {
my $self = shift;
my $template = scalar(@_) ? shift : '';
return '' if scalar(@_) && $_[0] && $self->cust_main->agentnum ne shift;
+ my $invoice_from = scalar(@_) ? shift : $conf->config('invoice_from');
my @print_text = $self->print_text('', $template);
my @invoicing_list = $self->cust_main->invoicing_list;
@@ -340,10 +343,10 @@ sub send {
if ( grep { $_ ne 'POST' } @invoicing_list or !@invoicing_list ) { #email
#better to notify this person than silence
- @invoicing_list = ($conf->config('invoice_from')) unless @invoicing_list;
+ @invoicing_list = ($invoice_from) unless @invoicing_list;
my $error = send_email(
- 'from' => $conf->config('invoice_from'),
+ 'from' => $invoice_from,
'to' => [ grep { $_ ne 'POST' } @invoicing_list ],
'subject' => 'Invoice',
'body' => \@print_text,