2){ $client_phone = substr($row['client_phone'],0,3)."-".substr($row['client_phone'],3,3)."-".substr($row['client_phone'],6,4); } $client_website = $row['client_website']; $sql_payments = mysqli_query($mysqli,"SELECT * FROM payments, accounts WHERE payments.account_id = accounts.account_id AND payments.invoice_id = $invoice_id ORDER BY payments.payment_id DESC"); //Add up all the payments for the invoice and get the total amount paid to the invoice $sql_amount_paid = mysqli_query($mysqli,"SELECT SUM(payment_amount) AS amount_paid FROM payments WHERE invoice_id = $invoice_id"); $row = mysqli_fetch_array($sql_amount_paid); $amount_paid = $row['amount_paid']; $balance = $invoice_amount - $amount_paid; ?> $invoice_item_name $invoice_item_description $$invoice_item_price $invoice_item_quantity $$invoice_item_tax $$invoice_item_total "; } $html = '
Date: '.$invoice_date.'
Due: '.$invoice_due.'
BILL TO:

'.$client_name.'
'.$client_address.'
'.$client_city.' '.$client_state.' '.$client_zip.'

'.$client_email.'
'.$client_phone.'
 

'.$invoice_items.'
Item Description Unit Cost Quantity Tax Line Total

Notes

'.$invoice_note.'
Subtotal: $ '.number_format($sub_total,2).'
Tax: $ '.number_format($total_tax,2).'
Total: $ '.number_format($invoice_amount,2).'
Paid: $ '.number_format($amount_paid,2).'
Balance due: $ '.number_format($balance,2).'
'.$config_invoice_footer.'
'; $path = (getenv('MPDF_ROOT')) ? getenv('MPDF_ROOT') : __DIR__; require_once $path . '/vendor/autoload.php'; $mpdf = new \Mpdf\Mpdf([ 'margin_left' => 20, 'margin_right' => 15, 'margin_top' => 48, 'margin_bottom' => 25, 'margin_header' => 10, 'margin_footer' => 10 ]); $mpdf->SetProtection(array('print')); $mpdf->SetTitle("$config_company_name - Invoice"); $mpdf->SetAuthor("$config_company_name"); if($invoice_status == 'Paid'){ $mpdf->SetWatermarkText("Paid"); } $mpdf->showWatermarkText = true; $mpdf->watermark_font = 'DejaVuSansCondensed'; $mpdf->watermarkTextAlpha = 0.1; $mpdf->SetDisplayMode('fullpage'); $mpdf->WriteHTML($html); $mpdf->Output(); } ?>