diff --git a/classes/PaymentModule.php b/classes/PaymentModule.php index 510053ef0..9048d273a 100644 --- a/classes/PaymentModule.php +++ b/classes/PaymentModule.php @@ -118,7 +118,7 @@ abstract class PaymentModuleCore extends Module $id_currency = $currency_special ? (int)($currency_special) : (int)($cart->id_currency); $currency = new Currency($id_currency); - $this->context->cart->order_reference = $reference; + $cart->order_reference = $reference; $orderCreationFailed = false; $cart_total_paid = (float)Tools::ps_round((float)($cart->getOrderTotal(true, Cart::BOTH)), 2); @@ -441,7 +441,8 @@ abstract class PaymentModuleCore extends Module // Join PDF invoice if ((int)(Configuration::get('PS_INVOICE')) && $order_status->invoice && $order->invoice_number) { - $fileAttachment['content'] = PDF::invoice($order, 'S'); + $pdf = new PDF($order->getInvoicesCollection(), PDF::TEMPLATE_INVOICE, $this->context->smarty); + $fileAttachment['content'] = $pdf->render(false); $fileAttachment['name'] = Configuration::get('PS_INVOICE_PREFIX', (int)($order->id_lang)).sprintf('%06d', $order->invoice_number).'.pdf'; $fileAttachment['mime'] = 'application/pdf'; } diff --git a/classes/pdf/PDF.php b/classes/pdf/PDF.php index ea5c6b2c4..5a98695af 100755 --- a/classes/pdf/PDF.php +++ b/classes/pdf/PDF.php @@ -52,7 +52,7 @@ class PDFCore $this->objects = array($objects); } - public function render() + public function render($display = true) { $render = false; $this->pdf_renderer->setFontForLang('fr'); @@ -81,7 +81,7 @@ class PDFCore } if ($render) - $this->pdf_renderer->render($this->filename); + return $this->pdf_renderer->render($this->filename, $display); } public function getTemplateObject($object) diff --git a/classes/pdf/PDFGenerator.php b/classes/pdf/PDFGenerator.php index 64e89ecef..a77c50fe1 100755 --- a/classes/pdf/PDFGenerator.php +++ b/classes/pdf/PDFGenerator.php @@ -121,15 +121,18 @@ class PDFGeneratorCore extends TCPDF * Render the pdf file * * @param string $filename + * @param boolean $inline * @throws PrestashopException */ - public function render($filename) + public function render($filename, $display = true) { if (empty($filename)) throw new PrestashopException('Missing filename.'); $this->lastPage(); - $this->output($filename, 'I'); + + $output = $display ? 'I' : 'S'; + return $this->output($filename, $output); } /**