diff options
Diffstat (limited to 'httemplate/misc/email-invoice.cgi')
-rwxr-xr-x | httemplate/misc/email-invoice.cgi | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/httemplate/misc/email-invoice.cgi b/httemplate/misc/email-invoice.cgi index ad9ba1abb..a560a1838 100755 --- a/httemplate/misc/email-invoice.cgi +++ b/httemplate/misc/email-invoice.cgi @@ -1,17 +1,23 @@ <% +my $conf = new FS::Conf; + #untaint invnum my($query) = $cgi->keywords; -$query =~ /^((.+)-)?(\d+)$/; -my $template = $2; -my $invnum = $3; +$query =~ /^(\d*)$/; +my $invnum = $1; my $cust_bill = qsearchs('cust_bill',{'invnum'=>$invnum}); die "Can't find invoice!\n" unless $cust_bill; -$cust_bill->email($template); +my $error = send_email( + 'from' => $cust_bill->_agent_invoice_from || $conf->config('invoice_from'), + 'to' => [ grep { $_ ne 'POST' } $cust_bill->cust_main->invoicing_list ], + 'subject' => 'Invoice', + 'body' => [ $cust_bill->print_text ], +); +eidiot($error) if $error; my $custnum = $cust_bill->getfield('custnum'); - print $cgi->redirect("${p}view/cust_main.cgi?$custnum"); %> |