Additional bugfixes for prepayment handling in sales reports (Customer Balances,...
[fa-stable.git] / sales / customer_invoice.php
index 6a8e82bf041a1674f6f4afb2772613e769892e0a..3bf5a6bbb7e147e5f0e1d3ccc5723995fe4d2f61 100644 (file)
@@ -160,16 +160,15 @@ if ( (isset($_GET['DeliveryNumber']) && ($_GET['DeliveryNumber'] > 0) )
        }
        else {
                $order_no = $_GET['InvoicePrepayments'];
-               $payments =  get_payments_for($_GET['InvoicePrepayments'], ST_SALESORDER);
        }
        processing_start();
 
-       $_SESSION['Items'] = new Cart(ST_SALESORDER, $order_no, ST_SALESINVOICE);
+       $_SESSION['Items'] = new cart(ST_SALESORDER, $order_no, ST_SALESINVOICE);
        $_SESSION['Items']->order_no = $order_no;
        $_SESSION['Items']->src_docs = array($order_no);
        $_SESSION['Items']->trans_no = 0;
        $_SESSION['Items']->trans_type = ST_SALESINVOICE;
-       $_SESSION['Items']->prepayments = $payments;
+
        $_SESSION['Items']->update_payments();
 
        copy_from_cart();
@@ -650,10 +649,10 @@ if ($prepaid)
                        $allocs += $pmt['amt'];
                }
        }
-
        label_row(_("Payments received:"), implode(',', $list));
        label_row(_("Invoiced here:"), price_format($_SESSION['Items']->prep_amount), 'class=label');
-       label_row(_("Left to be invoiced:"), price_format($_SESSION['Items']->get_trans_total()-max($_SESSION['Items']->prep_amount, $allocs)), 'class=label');
+       label_row($_SESSION['Items']->payment_terms['days_before_due'] == -1 ? _("Left to be invoiced:") : _("Invoiced so far:"),
+               price_format($_SESSION['Items']->get_trans_total()-max($_SESSION['Items']->prep_amount, $allocs)), 'class=label');
 }
 
 textarea_row(_("Memo:"), 'Comments', null, 50, 4);